From e9cbf94e06831f366cdb21b0b123ca48867fc973 Mon Sep 17 00:00:00 2001 From: simnandez Date: Fri, 22 Mar 2013 17:31:43 +0100 Subject: [PATCH 01/35] Trad: Add es_ES and ca_ES missing translations --- htdocs/langs/ca_ES/admin.lang | 17 +++++- htdocs/langs/ca_ES/bills.lang | 1 + htdocs/langs/ca_ES/companies.lang | 2 + htdocs/langs/ca_ES/compta.lang | 6 ++ htdocs/langs/ca_ES/cron.lang | 92 +++++++++++++++++++++++++++++++ htdocs/langs/ca_ES/main.lang | 2 +- htdocs/langs/ca_ES/sendings.lang | 1 + htdocs/langs/es_ES/admin.lang | 16 ++++-- htdocs/langs/es_ES/bills.lang | 1 + htdocs/langs/es_ES/companies.lang | 2 + htdocs/langs/es_ES/compta.lang | 8 ++- htdocs/langs/es_ES/cron.lang | 92 +++++++++++++++++++++++++++++++ htdocs/langs/es_ES/main.lang | 2 +- htdocs/langs/es_ES/sendings.lang | 1 + 14 files changed, 233 insertions(+), 10 deletions(-) create mode 100644 htdocs/langs/ca_ES/cron.lang create mode 100644 htdocs/langs/es_ES/cron.lang diff --git a/htdocs/langs/ca_ES/admin.lang b/htdocs/langs/ca_ES/admin.lang index 89761b3eba5..de095a8ff62 100644 --- a/htdocs/langs/ca_ES/admin.lang +++ b/htdocs/langs/ca_ES/admin.lang @@ -348,16 +348,18 @@ TextLong=Text llarg Int=numèric enter Float=Decimal DateAndTime=Data i hora +Unique=Unic Boolean=Boleano (Checkbox) ExtrafieldPhone=Telèfon ExtrafieldPrice=Preu ExtrafieldMail=Correu ExtrafieldSelect=Llista de selecció +ExtrafieldSeparator= LibraryToBuildPDF=Llibreria usada per a la creació d'arxius PDF WarningUsingFPDF=Atenció: El seu arxiu conf.php conté la directiva dolibarr_pdf_force_fpdf=1. Això fa que s'usi la llibreria FPDF per generar els seus arxius PDF. Aquesta llibreria és antiga i no cobreix algunes funcionalitats (Unicode, transparència d'imatges, idiomes ciríl · lics, àrabs o asiàtics, etc.), Pel que pot tenir problemes en la generació dels PDF.
Per resoldre-ho, i disposar d'un suport complet de PDF, pot descarregar la llibreria TCPDF , i a continuació comentar o eliminar la línia $dolibarr_pdf_force_fpdf=1, i afegir al seu lloc $dolibarr_lib_TCPDF_PATH='ruta_a_TCPDF' LocalTaxDesc=Alguns països apliquen 2 o 3 taxes a cada línia de factura. Si és el cas, escolliu el tipus de la segona i tercera taxa i el seu valor. Els possibles tipus són:
1: taxa local aplicable a productes i serveis sense IVA (IVA no s'aplica a la taxa local)
2: taxa local s'aplica a productes i serveis abans de l'IVA (IVA es calcula sobre import + taxa local)
3: taxa local s'aplica a productes sense IVA (IVA no s'aplica a la taxa local)
4: taxa local s'aplica a productes abans de l'IVA (IVA es calcula sobre l'import + taxa local)
5: taxa local s'aplica a serveis sense IVA (IVA no s'aplica a la taxa local)
6: taxa local s'aplica a serveis abans de l'IVA (IVA es calcula sobre import + taxa local) SuhosinSessionEncrypt=Emmagatzematge de sessions xifrades per Suhosin -# Modules= = +# Modules Module0Name=Usuaris y grups Module0Desc=Gestió d'usuaris i grups Module1Name=Tercers @@ -365,7 +367,7 @@ Module1Desc=Gestió de tercers (empreses, particulars) i contactes Module2Name=Comercial Module2Desc=Gestió comercial Module10Name=Comptabilitat -Module10Desc=Gestió simple de la comptabilitat (desglossament de factures i pagaments) +Module10Desc=Activació d'informes simples de comptabilitat (diaris, vendes) basats en el contingut de la base de dades. Sense desglossaments. Module20Name=Pressupostos Module20Desc=Gestió de pressupostos/propostes comercials Module22Name=E-Mailings @@ -450,6 +452,8 @@ Module1780Name=Categories Module1780Desc=Gestió de categories (productes, proveïdors i clients) Module2000Name=Editor WYSIWYG Module2000Desc=Permet l'edició de certes zones de text mitjançant un editor avançat +Module2300Name=Cron +Module2300Desc=Gestor de tasques programades Module2400Name=Agenda Module2400Desc=Gestió de l'agenda i de les accions Module2500Name=Gestió Electrònica de Documents @@ -673,6 +677,10 @@ Permission1411=Llegir els moviments comptables Permission1412=Crear/modificar/anular moviments comptables Permission1415=Llegir Balanços, informes, diaris, llibres mestres Permission1421=Exporta comandes de clients i atributs +Permission23001=Veure les tasques programades +Permission23002=Crear/Modificar les tasques programades +Permission23003=Eliminar les tasques programades +Permission23004=Executar les tasques programades Permission2401=Llegir accions (esdeveniments o tasques) vinculades al seu compte Permission2402=Crear/modificar accions (esdeveniments o tasques) vinculades al seu compte Permission2403=Modificar accions (esdeveniments o tasques) vinculades al seu compte @@ -946,7 +954,7 @@ TranslationDesc=L'elecció de l'idioma mostrat en pantalla es modifica:
* A n ClassNotFoundIntoPathWarning=No s'ha trobat la classe %s en el seu path PHP YesInSummer=Sí a l'estiu OnlyFollowingModulesAreOpenedToExternalUsers=Recordeu que només els mòduls següents estan oberts a usuaris externs (siguin quins siguin els permisos dels usuaris): -##### Module password generation= = +##### Module password generation PasswordGenerationStandard=Retorna una contrasenya generada per l'algoritme intern Dolibarr: 8 caràcters, números i caràcters en minúscules barrejades. PasswordGenerationNone=No ofereix contrasenyes. La contrasenya s'introdueix manualment. ##### Users setup ##### @@ -1270,6 +1278,8 @@ FCKeditorForCompany=Creació/edició WYSIWIG de la descripció i notes dels terc FCKeditorForProduct=Creació/edició WYSIWIG de la descripció i notes dels productes/serveis FCKeditorForProductDetails=Creació/edició WYSIWIG de les línies de detall dels productes (en comandes, pressupostos, factures, etc.) FCKeditorForMailing=Creació/edició WYSIWIG dels E-Mails +FCKeditorForUserSignature=Creació/edició WYSIWIG dela firma dels usuaris +FCKeditorForMail=Creació/edició WYSIWIG de tots els E-mails (excepte Utilitats->E-Mailings) ##### OSCommerce 1 ##### OSCommerceErrorConnectOkButWrongDatabase=La connexió s'ha establert, però la base de dades no sembla de OSCommerce. OSCommerceTestOk=La connexió al servidor '%s' sobre la base '%s' per l'usuari '%s' és correcta. @@ -1378,6 +1388,7 @@ MultiCompanySetup=Configuració del mòdul Multi-empresa SuppliersSetup=Configuració del mòdul Proveïdors SuppliersCommandModel=Model de comandes a proveïdors complet (logo...) SuppliersInvoiceModel=Model de factures de proveïdors complet (logo...) +SuppliersInvoiceNumberingModel=Models de numeració de factures de proveïdor ##### GeoIPMaxmind ##### GeoIPMaxmindSetup=Configuració del mòdul GeoIP Maxmind PathToGeoIPMaxmindCountryDataFile=Ruta de l'arxiu Maxmind que conté les conversions IP-> País.
Exemple: /usr/local/share/GeoIP/GeoIP.dat diff --git a/htdocs/langs/ca_ES/bills.lang b/htdocs/langs/ca_ES/bills.lang index 8456f4518e4..3f923cb917d 100644 --- a/htdocs/langs/ca_ES/bills.lang +++ b/htdocs/langs/ca_ES/bills.lang @@ -385,6 +385,7 @@ ClosePaidCreditNotesAutomatically=Classificar automàticament com "Pagats" els a AllCompletelyPayedInvoiceWillBeClosed=Totes les factures amb una resta a pagar 0 seran automàticament tancades a l'estat "Pagada". ToMakePayment=Pagar ToMakePaymentBack=Reemborsar +ListOfYourUnpaidInvoices=Llistat de factures impagades ##### Types de contacts ##### TypeContact_facture_internal_SALESREPFOLL=Responsable seguiment factura a client TypeContact_facture_external_BILLING=Contacte client facturació diff --git a/htdocs/langs/ca_ES/companies.lang b/htdocs/langs/ca_ES/companies.lang index 1559fd7cf72..c474ac42f68 100644 --- a/htdocs/langs/ca_ES/companies.lang +++ b/htdocs/langs/ca_ES/companies.lang @@ -393,6 +393,8 @@ UniqueThirdParties=Total de tercers únics InActivity=Actiu ActivityCeased=Tancat ActivityStateFilter=Estat d'activitat +ProductsIntoElements=Llistat de productes en %s + # Monkey MonkeyNumRefModelDesc=Retorna un número sota el format %syymm-nnnn per als codis de clients i %syymm-nnnn per als codis dels proveïdors, on yy és l'any, mm el mes i nnnn un comptador seqüencial sense ruptura i sense tornar a 0. # Leopard diff --git a/htdocs/langs/ca_ES/compta.lang b/htdocs/langs/ca_ES/compta.lang index fb9d58e541d..eff4e5cd8ad 100644 --- a/htdocs/langs/ca_ES/compta.lang +++ b/htdocs/langs/ca_ES/compta.lang @@ -157,3 +157,9 @@ COMPTA_ACCOUNT_SUPPLIER=Codi comptable per defecte de proveïdors (si no està d AddRemind=Desglossar import disponible RemainToDivide=Resta a repartir : WarningDepositsNotIncluded=Les factures de bestreta encara no estan incloses en aquesta versió en el mòdul de comptabilitat. +DatePaymentTermCantBeLowerThanObjectDate=La data límit de pagament no pot ser inferior a la data de l'objecte +Pcg_version=Versió del pla +Pcg_type=Tipus de compte +Pcg_subtype=Subtipus de compte +InvoiceLinesToDispatch=Línies de factures a desglossar +InvoiceDispatched=Factures desglossades \ No newline at end of file diff --git a/htdocs/langs/ca_ES/cron.lang b/htdocs/langs/ca_ES/cron.lang new file mode 100644 index 00000000000..67833a6b65b --- /dev/null +++ b/htdocs/langs/ca_ES/cron.lang @@ -0,0 +1,92 @@ +# Dolibarr language file - ca_ES - cron +CHARSET=UTF-8 + +# +# Admin +# +CronSetup=Pàgina de configuració del mòdul - Gestió de tasques planificades +URLToLaunchCronJobs=URL per llançar les tasques automàtiques +OrToLaunchASpecificJob=O per llançar una tasca específica +KeyForCronAccess=Codi de seguretat per a la URL de llançament de tasques automàtiques +FileToLaunchCronJobs=Ordre per llançar les tasques automàtiques +CronExplainHowToRunUnix=En un entorn Unix pot parametritzar crontab per executar aquesta comanda cada minut +CronExplainHowToRunWin=En un entorn Microsoft (tm) Windows pot utilitzar el planificador de tasques per llançar aquesta comanda cada minut +# +# Menu +# +CronListActive=Llistat de tasques planificades actives +CronListInactive=Llistat de tasques planificades inactives + + +# +# Page list +# +CronDateLastRun=Últim llançament +CronLastOutput=Última sortida +CronLastResult=Últim codi tornat +CronCommand=Comando +CronList=Llistat de tasques planificades +CronDelete=Eliminar la tasca planificada +CronConfirmDelete=Està segur que voleu eliminar aquesta tasca planificada? +CronExecute=Executar aquesta tasca +CronConfirmExecute=Està segur que voleu executar ara aquesta tasca? +CronInfo=Els treballs permeten executar les tasques a intervals regulars +CronWaitingJobs=Els seus treballs en espera: +CronTask=Tasca +CronNone=Ningún +CronDtStart=Data inici +CronDtEnd=Data fi +CronDtNextLaunch=Propera execució +CronDtLastLaunch=Darrera execució +CronFrequency=Freqüència +CronClass=Clase +CronMethod=Mètod +CronModule=Mòdul +CronAction=Acció +CronStatus=Estat +CronStatusActive=Activa +CronStatusInactive=Inactiva +CronEach=Cada +CronNoJobs=Sense treballs actualment +CronPriority=Prioritat +CronLabel=Descripció +CronNbRun=Nº ejec. +CronDtLastResult=Data de l'últim resultat de l'última execució + +# +#Page card +# +CronAdd=Afegir una tasca +CronHourStart=Dia i hora d'inici de la tasca +CronEvery=Executar cada +CronObject=Instància/Objecte a crear +CronArgs=Argument +CronSaveSucess=Registre guardat +CronNote=Nota +CronFieldMandatory=El camp %s és obligatori +CronErrEndDateStartDt=La data de fi no pot ser anterior a la d'inici +CronStatusActiveBtn=Activar +CronStatusInactiveBtn=Desactivar +CronTaskInactive=Aquesta tasca es troba desactivada +CronId=Id +CronClassFile=Classe (arxiu) +CronModuleHelp=Nombre del directorio del módulo Dolibarr (funciona automáticamente con los módulos externos Dolibarr).
Por ejemplo para llamar al método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor del módulo es product +CronClassFileHelp=El archivo archivo que contiene el objeto.
Por ejemplo para llamar el método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor de la clase es product.class.php +CronObjectHelp=El nombre del objeto a crear.
Por ejemplo para llamar el método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor del objeto es Product +CronMethodHelp=El método a lanzar.
Por ejemplo para llamar el método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor del método es fecth +CronArgsHelp=Los argumentos del método.
Por ejemplo para usar el método fetch del objeto Product deDolibarr /htdocs/product/class/product.class.php, el valor del parámetro podría ser 0, RefProduit +CronCommandHelp=El comando del sistema a executar + +# +# Info +# +CronInfoPage=Informació + +# +# Common +# +CronType=Tipus d'acció a executar +CronType_method=Mètode d'una classe d'un mòdul Dolibarr +CronType_command=Comando Shell +CronMenu=Cron +CronCannotLoadClass=impossible carregar la classe %s de l'objecte %s \ No newline at end of file diff --git a/htdocs/langs/ca_ES/main.lang b/htdocs/langs/ca_ES/main.lang index a3d51433d1a..35b4d437e4e 100644 --- a/htdocs/langs/ca_ES/main.lang +++ b/htdocs/langs/ca_ES/main.lang @@ -489,7 +489,7 @@ NbOfThirdParties=Número de tercers NbOfCustomers=Nombre de clients NbOfLines=Números de línies NbOfObjects=Nombre d'objectes -NbOfReferers=Nombre de referències +NbOfReferers=Consumició Referers=Referències TotalQuantity=Quantitat total DateFromTo=De %s a %s diff --git a/htdocs/langs/ca_ES/sendings.lang b/htdocs/langs/ca_ES/sendings.lang index 38462265059..fc53bde5f28 100644 --- a/htdocs/langs/ca_ES/sendings.lang +++ b/htdocs/langs/ca_ES/sendings.lang @@ -59,6 +59,7 @@ LinkToTrackYourPackage=Enllaç per al seguiment del seu paquet ShipmentCreationIsDoneFromOrder=De moment, la creació d'una nova expedició es realitza des de la fitxa de comanda. RelatedShippings=Expedició(ns) associades ShipmentLine=Línia d'expedició +CarrierList=Llistat de transportistes # Sending methods SendingMethodCATCH=Recollit pel client diff --git a/htdocs/langs/es_ES/admin.lang b/htdocs/langs/es_ES/admin.lang index 811d9166b57..88328c5cfac 100644 --- a/htdocs/langs/es_ES/admin.lang +++ b/htdocs/langs/es_ES/admin.lang @@ -354,11 +354,12 @@ ExtrafieldPhone=Teléfono ExtrafieldPrice=Precio ExtrafieldMail=Correo ExtrafieldSelect=Lista de selección +ExtrafieldSeparator= LibraryToBuildPDF=Librería usada para la creación de archivos PDF WarningUsingFPDF=Atención: Su archivo conf.php contiene la directiva dolibarr_pdf_force_fpdf=1. Esto hace que se use la librería FPDF para generar sus archivos PDF. Esta librería es antigua y no cubre algunas funcionalidades (Unicode, transparencia de imágenes, idiomas cirílicos, árabes o asiáticos, etc.), por lo que puede tener problemas en la generación de los PDF.
Para resolverlo, y disponer de un soporte completo de PDF, puede descargar la librería TCPDF , y a continuación comentar o eliminar la línea $dolibarr_pdf_force_fpdf=1, y añadir en su lugar $dolibarr_lib_TCPDF_PATH='ruta_a_TCPDF' LocalTaxDesc=Algunos países aplican 2 o 3 tasas a cada línea de factura. Si es el caso, escoja el tipo de la segunda y tercera tasa y su valor. Los posibles tipos son:
1 : tasa local aplicable a productos y servicios sin IVA (IVA no se aplica en la tasa local)
2 : tasa local se aplica a productos y servicios antes del IVA (IVA se calcula sobre importe+tasa local)
3 : tasa local se aplica a productos sin IVA (IVA no se aplica en la tasa local)
4 : tasa local se aplica a productos antes del IVA (IVA se calcula sobre el importe+tasa local)
5 : tasa local se aplica a servicios sin IVA (IVA no se aplica a la tasa local)
6 : tasa local se aplica a servicios antes del IVA (IVA se calcula sobre importe + tasa local) SuhosinSessionEncrypt=Almacenamiento de sesiones cifradas por Suhosin -# Modules= = +# Modules Module0Name=Usuarios y grupos Module0Desc=Gestión de usuarios y grupos Module1Name=Terceros @@ -366,7 +367,7 @@ Module1Desc=Gestión de terceros (empresas, particulares) y contactos Module2Name=Comercial Module2Desc=Gestión comercial Module10Name=Contabilidad -Module10Desc=Gestión simple de la contabilidad (desglose de facturas y pagos) +Module10Desc=Activación de informes simples de contabilidad (diarios, ventas) basados en el contenido de la base de datos. Sin desgloses. Module20Name=Presupuestos Module20Desc=Gestión de presupuestos/propuestas comerciales Module22Name=E-Mailings @@ -451,6 +452,8 @@ Module1780Name=Categorías Module1780Desc=Gestión de categorías (productos, proveedores y clientes) Module2000Name=Editor WYSIWYG Module2000Desc=Permite la edición de ciertas zonas de texto mediante un editor avanzado +Module2300Name=Cron +Module2300Desc=Gestor de tareas programadas Module2400Name=Agenda Module2400Desc=Gestión de la agenda y de las acciones Module2500Name=Gestión Electrónica de Documentos @@ -674,6 +677,10 @@ Permission1411=Leer los movimientos contables Permission1412=Crear/modificar/anular movimientos contables Permission1415=Leer Balances, informes, diarios, libros maestros Permission1421=Exportar pedidos de clientes y atributos +Permission23001=Ver las tareas programadas +Permission23002=Crear/Modificar las tareas programadas +Permission23003=Eliminar las tareas programadas +Permission23004=Ejecutar las tareas programadas Permission2401=Leer acciones (eventos o tareas) vinculadas a su cuenta Permission2402=Crear/eliminar acciones (eventos o tareas) vinculadas a su cuenta Permission2403=Modificar acciones (eventos o tareas) vinculadas a su cuenta @@ -947,7 +954,7 @@ TranslationDesc=La elección del idioma mostrado en pantalla se modifica:
* A ClassNotFoundIntoPathWarning=No se ha encontrado la clase %s en su path PHP YesInSummer=Sí en verano OnlyFollowingModulesAreOpenedToExternalUsers=Tenga en cuenta que sólo los módulos siguientes están abiertos a usuarios externos (sean cuales sean los permisos de los usuarios): -##### Module password generation= = +##### Module password generation PasswordGenerationStandard=Devuelve una contraseña generada por el algoritmo interno Dolibarr: 8 caracteres, números y caracteres en minúsculas mezcladas. PasswordGenerationNone=No ofrece contraseñas. La contraseña se introduce manualmente. ##### Users setup ##### @@ -1271,7 +1278,7 @@ FCKeditorForCompany=Creación/edición WYSIWIG de la descripción y notas de los FCKeditorForProduct=Creación/edición WYSIWIG de la descripción y notas de los productos/servicios FCKeditorForProductDetails=Creación/edición WYSIWIG de las líneas de detalle de los productos (en pedidos, presupuestos, facturas, etc.) FCKeditorForMailing=Creación/edición WYSIWIG de los E-Mails (Utilidades->E-Mailings) -FCKeditorForUserSignature=Creación/edición WYSIWIG de los usuario firma +FCKeditorForUserSignature=Creación/edición WYSIWIG de la firma de usuarios FCKeditorForMail=Creación/edición WYSIWIG de todos los E-Mails (excepto Utilidades->E-Mailings) ##### OSCommerce 1 ##### OSCommerceErrorConnectOkButWrongDatabase=La conexión se ha establecido, pero la base de datos no parece de OSCommerce. @@ -1381,6 +1388,7 @@ MultiCompanySetup=Configuración del módulo Multi-empresa SuppliersSetup=Configuración del módulo Proveedores SuppliersCommandModel=Modelo de pedidos a proveedores completo (logo...) SuppliersInvoiceModel=Modelo de facturas de proveedores completo (logo...) +SuppliersInvoiceNumberingModel=Modelos de numeración de facturas de proveedor ##### GeoIPMaxmind ##### GeoIPMaxmindSetup=Configuración del módulo GeoIP Maxmind PathToGeoIPMaxmindCountryDataFile=Ruta del archivo Maxmind que contiene las conversiones IP->País.
Ejemplo: /usr/local/share/GeoIP/GeoIP.dat diff --git a/htdocs/langs/es_ES/bills.lang b/htdocs/langs/es_ES/bills.lang index e72c4637fd4..4429143bacf 100644 --- a/htdocs/langs/es_ES/bills.lang +++ b/htdocs/langs/es_ES/bills.lang @@ -385,6 +385,7 @@ ClosePaidCreditNotesAutomatically=Clasificar automáticamente como "Pagados" los AllCompletelyPayedInvoiceWillBeClosed=Todas las facturas con un resto a pagar 0 serán automáticamente cerradas al estado "Pagada". ToMakePayment=Pagar ToMakePaymentBack=Reembolsar +ListOfYourUnpaidInvoices=Listado de facturas impagadas ##### Types de contacts ##### TypeContact_facture_internal_SALESREPFOLL=Responsable seguimiento factura a cliente TypeContact_facture_external_BILLING=Contacto cliente facturación diff --git a/htdocs/langs/es_ES/companies.lang b/htdocs/langs/es_ES/companies.lang index fedfabfbc2c..b86b0d5fffa 100644 --- a/htdocs/langs/es_ES/companies.lang +++ b/htdocs/langs/es_ES/companies.lang @@ -394,6 +394,8 @@ UniqueThirdParties=Total de terceros únicos InActivity=Activo ActivityCeased=Cerrado ActivityStateFilter=Estado de actividad +ProductsIntoElements=Listado de productos en %s + # Monkey MonkeyNumRefModelDesc=Devuelve un número bajo el formato %syymm-nnnn para los códigos de clientes y %syymm-nnnn para los códigos de los proveedores, donde yy es el año, mm el mes y nnnn un contador secuencial sin ruptura y sin volver a 0. # Leopard diff --git a/htdocs/langs/es_ES/compta.lang b/htdocs/langs/es_ES/compta.lang index 2f72861a920..f2e86e42739 100644 --- a/htdocs/langs/es_ES/compta.lang +++ b/htdocs/langs/es_ES/compta.lang @@ -158,4 +158,10 @@ COMPTA_ACCOUNT_CUSTOMER=Código contable por defecto de clientes (si no está de COMPTA_ACCOUNT_SUPPLIER=Código contable por defecto de proveedores (si no está definido en la pestaña terceros) AddRemind=Desglosar importe disponible RemainToDivide=Resto a repartir : -WarningDepositsNotIncluded=Las facturas de anticipo aún no están incluidas en esta versión en el módulo de contabilidad. \ No newline at end of file +WarningDepositsNotIncluded=Las facturas de anticipo aún no están incluidas en esta versión en el módulo de contabilidad. +DatePaymentTermCantBeLowerThanObjectDate=La fecha límite de pago no puede ser inferior a la fecha del objeto +Pcg_version=Versión del plan +Pcg_type=Tipo de cuenta +Pcg_subtype=Subtipo de cuenta +InvoiceLinesToDispatch=Líneas de facturas a desglosar +InvoiceDispatched=Facturas desglosadas \ No newline at end of file diff --git a/htdocs/langs/es_ES/cron.lang b/htdocs/langs/es_ES/cron.lang new file mode 100644 index 00000000000..37710fdd67d --- /dev/null +++ b/htdocs/langs/es_ES/cron.lang @@ -0,0 +1,92 @@ +# Dolibarr language file - es_ES - cron +CHARSET=UTF-8 + +# +# Admin +# +CronSetup=Página de configuración del módulo - Gestión de tareas planificadas +URLToLaunchCronJobs=URL para lanzar las tareas automáticas +OrToLaunchASpecificJob=O para lanzar una tarea específica +KeyForCronAccess=Código de seguridad para la URL de lanzamiento de tareas automáticas +FileToLaunchCronJobs=Comando para lanzar las tareas automáticas +CronExplainHowToRunUnix=En un entorno Unix puede parametrizar CronTab para ejecutar este comando cada minuto +CronExplainHowToRunWin=En un entorno Microsoft(tm) Windows puede usar el planificador de tareas para lanzar este comando cada minuto +# +# Menu +# +CronListActive=Listado de tareas planificadas activas +CronListInactive= Listado de tareas planificadas inactivas + + +# +# Page list +# +CronDateLastRun=Último lanzamiento +CronLastOutput=Última salida +CronLastResult=Último código devuelto +CronCommand=Comando +CronList=Listado de tareas planificadas +CronDelete=Eliminar la tarea planificada +CronConfirmDelete=¿Está seguro de querer eliminar esta tarea planificada? +CronExecute=Ejecutar esta tarea +CronConfirmExecute=¿Está seguro de querer ejecutar ahora esta tarea? +CronInfo=Los trabajos permiten ejecutar las tareas a intervalos regulares +CronWaitingJobs=Sus trabajos en espera: +CronTask=Tarea +CronNone=Ninguno +CronDtStart=Fecha inicio +CronDtEnd=Fecha fin +CronDtNextLaunch=Próxima ejecución +CronDtLastLaunch=Última ejecución +CronFrequency=Frecuencia +CronClass=Clase +CronMethod=Método +CronModule=Módulo +CronAction=Acción +CronStatus=Estado +CronStatusActive=Activa +CronStatusInactive=Inactiva +CronEach=Cada +CronNoJobs=Sin trabajos actualmente +CronPriority=Prioridad +CronLabel=Descripción +CronNbRun=Nº ejec. +CronDtLastResult=Fecha del último resultado de la última ejecución + +# +#Page card +# +CronAdd=Añadir una tarea +CronHourStart=Dia y hora de inicio de la tarea +CronEvery=Ejecutar cada +CronObject=Instancia/Objeto a crear +CronArgs=Argumento +CronSaveSucess=Registro guardado +CronNote=Nota +CronFieldMandatory=El campo %s es obligatorio +CronErrEndDateStartDt=La fecha de fin no puede ser anterior a la de inicio +CronStatusActiveBtn=Activar +CronStatusInactiveBtn=Desactivar +CronTaskInactive=Esta tarea se encuentra desactivada +CronId=Id +CronClassFile=Clase (archivo) +CronModuleHelp=Nombre del directorio del módulo Dolibarr (funciona automáticamente con los módulos externos Dolibarr).
Por ejemplo para llamar al método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor del módulo es product +CronClassFileHelp=El archivo archivo que contiene el objeto.
Por ejemplo para llamar el método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor de la clase es product.class.php +CronObjectHelp=El nombre del objeto a crear.
Por ejemplo para llamar el método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor del objeto es Product +CronMethodHelp=El método a lanzar.
Por ejemplo para llamar el método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor del método es fecth +CronArgsHelp=Los argumentos del método.
Por ejemplo para usar el método fetch del objeto Product deDolibarr /htdocs/product/class/product.class.php, el valor del parámetro podría ser 0, RefProduit +CronCommandHelp=El comando del sistema a ejecutar + +# +# Info +# +CronInfoPage=Información + +# +# Common +# +CronType=Tipo de acción a ejecutar +CronType_method=Método de una clase de un módulo Dolibarr +CronType_command=Comando Shell +CronMenu=Cron +CronCannotLoadClass=imposible cargar la clase %s o el objeto %s \ No newline at end of file diff --git a/htdocs/langs/es_ES/main.lang b/htdocs/langs/es_ES/main.lang index ec308d590d5..b7ba4d9c578 100644 --- a/htdocs/langs/es_ES/main.lang +++ b/htdocs/langs/es_ES/main.lang @@ -489,7 +489,7 @@ NbOfThirdParties=Número de terceros NbOfCustomers=Numero de clientes NbOfLines=Números de líneas NbOfObjects=Número de objetos -NbOfReferers=Número de referencias +NbOfReferers=Consumición Referers=Referencias TotalQuantity=Cantidad total DateFromTo=De %s a %s diff --git a/htdocs/langs/es_ES/sendings.lang b/htdocs/langs/es_ES/sendings.lang index 7efaabc81cd..99dda507fa8 100644 --- a/htdocs/langs/es_ES/sendings.lang +++ b/htdocs/langs/es_ES/sendings.lang @@ -59,6 +59,7 @@ LinkToTrackYourPackage=Enlace para el seguimento de su paquete ShipmentCreationIsDoneFromOrder=De momento, la creación de una nueva expedición se realiza desde la ficha de pedido. RelatedShippings=Expedición(es) asociada(s) ShipmentLine=Línea de expedición +CarrierList=Listado de transportistas # Sending methods SendingMethodCATCH=Recogido por el cliente From 9476a346b87f97f6765bea58b5273c6429f190c0 Mon Sep 17 00:00:00 2001 From: fhenry Date: Fri, 22 Mar 2013 18:23:43 +0100 Subject: [PATCH 02/35] Fix update run date --- htdocs/cron/class/cronjob.class.php | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/htdocs/cron/class/cronjob.class.php b/htdocs/cron/class/cronjob.class.php index b24055c6f3d..2fc051a5b82 100644 --- a/htdocs/cron/class/cronjob.class.php +++ b/htdocs/cron/class/cronjob.class.php @@ -862,8 +862,6 @@ class Cronjob extends CommonObject $error=0; $now=dol_now(); - $this->db->begin(); - if ($this->jobtype=='method') { // load classes $ret=dol_include_once("/".$this->module_name."/class/".$this->classesname,$this->objectname); @@ -885,6 +883,15 @@ class Cronjob extends CommonObject // Create Object for the call module $object = new $this->objectname($this->db); + //Update launch start date + $this->datelastrun=$now; + $this->nbrun=$this->nbrun+1; + $result = $this->update($user); + if ($result<0) { + dol_syslog(get_class($this)."::run_jobs ".$this->error, LOG_ERR); + return -1; + } + $params_arr = array(); $params_arr=explode(", ",$this->params); if (!is_array($params_arr)) { @@ -905,6 +912,15 @@ class Cronjob extends CommonObject dol_syslog(get_class($this)."::run_jobs system:".$this->command, LOG_DEBUG); $output_arr=array(); + //Update launch start date + $this->datelastrun=$now; + $this->nbrun=$this->nbrun+1; + $result = $this->update($user); + if ($result<0) { + dol_syslog(get_class($this)."::run_jobs ".$this->error, LOG_ERR); + return -1; + } + exec($this->command, $output_arr,$retval); dol_syslog(get_class($this)."::run_jobs output_arr:".var_export($output_arr,true), LOG_DEBUG); @@ -918,16 +934,13 @@ class Cronjob extends CommonObject $this->lastresult=$retval; } + //Update result date $this->datelastresult=$now; - $this->datelastrun=$now; - $this->nbrun=$this->nbrun+1; $result = $this->update($user); if ($result<0) { dol_syslog(get_class($this)."::run_jobs ".$this->error, LOG_ERR); - $this->db->rollback(); return -1; }else { - $this->db->commit(); return 1; } From 34bfdb18466de4df7eb872a2f4d6ad7b820c2af5 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Fri, 22 Mar 2013 19:21:46 +0100 Subject: [PATCH 03/35] Fix: broken feature if the table has no field fk_parent_line --- htdocs/core/class/commonobject.class.php | 25 +++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 9058350747f..975765d12b4 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -1012,13 +1012,13 @@ abstract class CommonObject /** * Save a new position (field rang) for details lines. * You can choose to set position for lines with already a position or lines without any position defined. - * Call this function only for table that contains a field fk_parent_line. * - * @param boolean $renum true to renum all already ordered lines, false to renum only not already ordered lines. - * @param string $rowidorder ASC or DESC + * @param boolean $renum true to renum all already ordered lines, false to renum only not already ordered lines. + * @param string $rowidorder ASC or DESC + * @param boolean $fk_parent_line Table with fk_parent_line field or not * @return void */ - function line_order($renum=false, $rowidorder='ASC') + function line_order($renum=false, $rowidorder='ASC', $fk_parent_line=true) { if (! $this->table_element_line) { @@ -1055,7 +1055,8 @@ abstract class CommonObject // We first search all lines that are parent lines (for multilevel details lines) $sql = 'SELECT rowid FROM '.MAIN_DB_PREFIX.$this->table_element_line; $sql.= ' WHERE '.$this->fk_element.' = '.$this->id; - $sql.= ' AND fk_parent_line IS NULL'; + if ($fk_parent_line) + $sql.= ' AND fk_parent_line IS NULL'; $sql.= ' ORDER BY rang ASC, rowid '.$rowidorder; dol_syslog(get_class($this)."::line_order search all parent lines sql=".$sql, LOG_DEBUG); @@ -1130,12 +1131,13 @@ abstract class CommonObject /** * Update a line to have a lower rank * - * @param int $rowid Id of line + * @param int $rowid Id of line + * @param boolean $fk_parent_line Table with fk_parent_line field or not * @return void */ - function line_up($rowid) + function line_up($rowid, $fk_parent_line=true) { - $this->line_order(); + $this->line_order(false, 'ASC', $fk_parent_line); // Get rang of line $rang = $this->getRangOfLine($rowid); @@ -1147,12 +1149,13 @@ abstract class CommonObject /** * Update a line to have a higher rank * - * @param int $rowid Id of line + * @param int $rowid Id of line + * @param boolean $fk_parent_line Table with fk_parent_line field or not * @return void */ - function line_down($rowid) + function line_down($rowid, $fk_parent_line=true) { - $this->line_order(); + $this->line_order(false, 'ASC', $fk_parent_line); // Get rang of line $rang = $this->getRangOfLine($rowid); From ea296d8429892dc67a733ba4fa3ede238441d1be Mon Sep 17 00:00:00 2001 From: Grand Philippe Date: Fri, 22 Mar 2013 19:24:26 +0100 Subject: [PATCH 04/35] fix error translation --- htdocs/langs/zh_CN/members.lang | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/langs/zh_CN/members.lang b/htdocs/langs/zh_CN/members.lang index e8ad2efad6f..a664e7290a2 100644 --- a/htdocs/langs/zh_CN/members.lang +++ b/htdocs/langs/zh_CN/members.lang @@ -157,7 +157,7 @@ ShowTypeCard=显示类型'%s' HTPasswordExport=htpassword文件生成 NoThirdPartyAssociatedToMember=无关联的第三方该会员 ThirdPartyDolibarr=Dolibarr第三者 -MembersAndSubscriptions=议员和Suscriptions +MembersAndSubscriptions=议员和Subscriptions // STOP - Lines generated via autotranslator.php tool (2010-06-08 21:22:55). From 7ce90c7bf194a4407a4c90011a9a7726074af074 Mon Sep 17 00:00:00 2001 From: fhenry Date: Sat, 23 Mar 2013 12:03:47 +0100 Subject: [PATCH 05/35] Fix : Main eMail configuration SMTP password as input type wasn't password (password display in clear...)! --- htdocs/admin/mails.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/admin/mails.php b/htdocs/admin/mails.php index fa4aa52bfc8..f96528648af 100644 --- a/htdocs/admin/mails.php +++ b/htdocs/admin/mails.php @@ -434,7 +434,7 @@ if ($action == 'edit') // SuperAdministrator access only if (empty($conf->multicompany->enabled) || ($user->admin && !$user->entity)) { - print ''; + print ''; } else { From 3af7ca5ac8722436db37b88e75b689aa617465c9 Mon Sep 17 00:00:00 2001 From: eldy Date: Sat, 23 Mar 2013 12:23:09 +0100 Subject: [PATCH 06/35] Work on revenue stamp feature. --- htdocs/core/class/commonobject.class.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index 975765d12b4..dcd96ed6734 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -1509,6 +1509,9 @@ abstract class CommonObject $this->total_localtax2 += $obj->total_localtax2; $this->total_ttc += $obj->total_ttc; + // Add revenue stamp to total + $this->total_ttc += isset($this->revenuestamp)?$this->revenuestamp:0; + // Check if there is a global invoice tax for this vat rate // FIXME: We should have no database access into this function. Also localtax 7 seems to have problem so i add condition to avoid it into standard usage without loosing it. if (! empty($conf->global->MAIN_USE_LOCALTAX_TYPE_7)) From c8d6e9e44a37cc14143b40f661feff3306b3138e Mon Sep 17 00:00:00 2001 From: eldy Date: Sat, 23 Mar 2013 12:33:25 +0100 Subject: [PATCH 07/35] Fix: List of customers to build invoice or order --- htdocs/commande/fiche.php | 2 +- htdocs/compta/facture.php | 2 +- htdocs/contrat/fiche.php | 2 +- htdocs/core/class/html.form.class.php | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/htdocs/commande/fiche.php b/htdocs/commande/fiche.php index 52b7761adbe..bb9c9117f24 100644 --- a/htdocs/commande/fiche.php +++ b/htdocs/commande/fiche.php @@ -1487,7 +1487,7 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G else { print ''; - print $form->select_company('','socid','s.client = 1',1); + print $form->select_company('','socid','s.client = 1 OR s.client = 3',1); print ''; } print ''."\n"; diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 96fca70af4c..77294a3c459 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -1916,7 +1916,7 @@ if ($action == 'create') else { print ''; - print $form->select_company('','socid','s.client = 1',1); + print $form->select_company('','socid','s.client = 1 OR s.client = 3',1); print ''; } print ''."\n"; diff --git a/htdocs/contrat/fiche.php b/htdocs/contrat/fiche.php index 902dde79f17..de9ce68e6b3 100644 --- a/htdocs/contrat/fiche.php +++ b/htdocs/contrat/fiche.php @@ -827,7 +827,7 @@ if ($action == 'create') else { print ''; - print $form->select_company('','socid','s.client = 1',1); + print $form->select_company('','socid','s.client = 1 OR s.client = 3',1); print ''; } print ''."\n"; diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index 941865da45a..4807ec768fa 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -678,7 +678,7 @@ class Form if (!$user->rights->societe->client->voir && !$user->societe_id) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; $sql.= " WHERE s.entity IN (".getEntity('societe', 1).")"; if (! empty($user->societe_id)) $sql.= " AND s.rowid = ".$user->societe_id; - if ($filter) $sql.= " AND ".$filter; + if ($filter) $sql.= " AND (".$filter.")"; if (!$user->rights->societe->client->voir && !$user->societe_id) $sql.= " AND s.rowid = sc.fk_soc AND sc.fk_user = " .$user->id; $sql.= " ORDER BY nom ASC"; From 90025f9c13cf0a4270fd76ecfc9be9a6e7f52044 Mon Sep 17 00:00:00 2001 From: eldy Date: Sat, 23 Mar 2013 13:07:25 +0100 Subject: [PATCH 08/35] Work on revenue stamp --- htdocs/compta/facture.php | 41 +++++++++++++++++-- htdocs/compta/facture/class/facture.class.php | 6 ++- htdocs/core/class/commonobject.class.php | 6 +-- htdocs/langs/en_US/bills.lang | 1 + htdocs/langs/fr_FR/bills.lang | 1 + 5 files changed, 48 insertions(+), 7 deletions(-) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 77294a3c459..aa6f3cfec07 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -302,6 +302,14 @@ else if ($action == 'setpaymentterm' && $user->rights->facture->creer) $result=$object->update($user); if ($result < 0) dol_print_error($db,$object->error); } +else if ($action == 'setrevenuestamp' && $user->rights->facture->creer) +{ + $object->fetch($id); + $object->revenuestamp=GETPOST('revenuestamp'); + $result=$object->update($user); + $object->update_price(1); + if ($result < 0) dol_print_error($db,$object->error); +} else if ($action == 'setremisepercent' && $user->rights->facture->creer) { $object->fetch($id); @@ -2745,6 +2753,7 @@ else if ($id > 0 || ! empty($ref)) /* * List of payments */ + $selleruserevenustamp=empty($conf->global->MAIN_USE_REVENUE_STAMP)?0:1; // TODO Add method societe->useRevenueStamp() to look into table llx_c_revenue_stamp if there is one line for country $sign=1; if ($object->type == 2) $sign=-1; @@ -2752,11 +2761,10 @@ else if ($id > 0 || ! empty($ref)) $nbrows=8; $nbcols=2; if (! empty($conf->projet->enabled)) $nbrows++; if (! empty($conf->banque->enabled)) $nbcols++; - - //Local taxes if($mysoc->localtax1_assuj=="1") $nbrows++; if($mysoc->localtax2_assuj=="1") $nbrows++; - + if ($selleruserevenustamp) $nbrows++; + print ''; print ''; @@ -3042,6 +3050,33 @@ else if ($id > 0 || ! empty($ref)) print ''; } + // Revenue stamp + if ($selleruserevenustamp) // Test company use revenue stamp + { + print ''; + } + + // Total with tax print ''; // Statut diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index f3427ee5d4b..38995fdebb9 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -75,6 +75,7 @@ class Facture extends CommonInvoice var $total_ht=0; var $total_tva=0; var $total_ttc=0; + var $revenuestamp; var $note; // deprecated var $note_private; var $note_public; @@ -795,7 +796,8 @@ class Facture extends CommonInvoice if (empty($rowid) && empty($ref) && empty($ref_ext) && empty($ref_int)) return -1; - $sql = 'SELECT f.rowid,f.facnumber,f.ref_client,f.ref_ext,f.ref_int,f.type,f.fk_soc,f.amount,f.tva, f.localtax1, f.localtax2, f.total,f.total_ttc,f.remise_percent,f.remise_absolue,f.remise'; + $sql = 'SELECT f.rowid,f.facnumber,f.ref_client,f.ref_ext,f.ref_int,f.type,f.fk_soc,f.amount,f.tva, f.localtax1, f.localtax2, f.total, f.total_ttc, f.revenuestamp'; + $sql.= ', f.remise_percent, f.remise_absolue, f.remise'; $sql.= ', f.datef as df'; $sql.= ', f.date_lim_reglement as dlr'; $sql.= ', f.datec as datec'; @@ -841,6 +843,7 @@ class Facture extends CommonInvoice $this->total_localtax1 = $obj->localtax1; $this->total_localtax2 = $obj->localtax2; $this->total_ttc = $obj->total_ttc; + $this->revenuestamp = $obj->revenuestamp; $this->paye = $obj->paye; $this->close_code = $obj->close_code; $this->close_note = $obj->close_note; @@ -1050,6 +1053,7 @@ class Facture extends CommonInvoice $sql.= " localtax2=".(isset($this->total_localtax2)?$this->total_localtax2:"null").","; $sql.= " total=".(isset($this->total_ht)?$this->total_ht:"null").","; $sql.= " total_ttc=".(isset($this->total_ttc)?$this->total_ttc:"null").","; + $sql.= " revenuestamp=".((isset($this->revenuestamp) && $this->revenuestamp != '')?$this->revenuestamp:"null").","; $sql.= " fk_statut=".(isset($this->statut)?$this->statut:"null").","; $sql.= " fk_user_author=".(isset($this->user_author)?$this->user_author:"null").","; $sql.= " fk_user_valid=".(isset($this->fk_user_valid)?$this->fk_user_valid:"null").","; diff --git a/htdocs/core/class/commonobject.class.php b/htdocs/core/class/commonobject.class.php index dcd96ed6734..79a471a0251 100644 --- a/htdocs/core/class/commonobject.class.php +++ b/htdocs/core/class/commonobject.class.php @@ -1509,9 +1509,6 @@ abstract class CommonObject $this->total_localtax2 += $obj->total_localtax2; $this->total_ttc += $obj->total_ttc; - // Add revenue stamp to total - $this->total_ttc += isset($this->revenuestamp)?$this->revenuestamp:0; - // Check if there is a global invoice tax for this vat rate // FIXME: We should have no database access into this function. Also localtax 7 seems to have problem so i add condition to avoid it into standard usage without loosing it. if (! empty($conf->global->MAIN_USE_LOCALTAX_TYPE_7)) @@ -1559,6 +1556,9 @@ abstract class CommonObject $i++; } + // Add revenue stamp to total + $this->total_ttc += isset($this->revenuestamp)?$this->revenuestamp:0; + $this->db->free($resql); // Now update global field total_ht, total_ttc and tva diff --git a/htdocs/langs/en_US/bills.lang b/htdocs/langs/en_US/bills.lang index 785f131b61b..1ce21c7a8f6 100644 --- a/htdocs/langs/en_US/bills.lang +++ b/htdocs/langs/en_US/bills.lang @@ -390,6 +390,7 @@ AllCompletelyPayedInvoiceWillBeClosed=All invoice with no remain to pay will be ToMakePayment=Pay ToMakePaymentBack=Pay back ListOfYourUnpaidInvoices=List of unpaid invoices +RevenueStamp=Revenue stamp ##### Types de contacts ##### TypeContact_facture_internal_SALESREPFOLL=Representative following-up customer invoice TypeContact_facture_external_BILLING=Customer invoice contact diff --git a/htdocs/langs/fr_FR/bills.lang b/htdocs/langs/fr_FR/bills.lang index 51424be1cbf..e5955167dd8 100644 --- a/htdocs/langs/fr_FR/bills.lang +++ b/htdocs/langs/fr_FR/bills.lang @@ -387,6 +387,7 @@ AllCompletelyPayedInvoiceWillBeClosed=Toutes les factures avec un reste à payer ToMakePayment=Payer ToMakePaymentBack=Rembourser ListOfYourUnpaidInvoices=Liste des factures impayées +RevenueStamp=Timbre fiscal ##### Types de contacts ##### TypeContact_facture_internal_SALESREPFOLL=Responsable suivi facture client TypeContact_facture_external_BILLING=Contact client facturation From 8971e6fe15db3907195ccf684800531c04ed929a Mon Sep 17 00:00:00 2001 From: fhenry Date: Sat, 23 Mar 2013 14:39:23 +0100 Subject: [PATCH 09/35] [ task #710 ] Envoi de mail --- htdocs/comm/propal.php | 26 +++++++++++- htdocs/commande/fiche.php | 22 +++++++++- htdocs/compta/facture.php | 25 +++++++++++ htdocs/core/class/html.formmail.class.php | 2 +- htdocs/expedition/fiche.php | 40 +++++++++++++++-- htdocs/fichinter/fiche.php | 34 ++++++++++++--- htdocs/fourn/commande/fiche.php | 52 ++++++++++++++++------- htdocs/fourn/facture/fiche.php | 34 ++++++++++++--- htdocs/langs/bg_BG/other.lang | 16 +++---- htdocs/langs/ca_ES/other.lang | 16 +++---- htdocs/langs/da_DK/other.lang | 18 ++++---- htdocs/langs/de_AT/other.lang | 16 +++---- htdocs/langs/de_DE/other.lang | 16 +++---- htdocs/langs/el_GR/other.lang | 16 +++---- htdocs/langs/en_IN/other.lang | 2 +- htdocs/langs/en_US/other.lang | 16 +++---- htdocs/langs/es_ES/other.lang | 16 +++---- htdocs/langs/et_EE/other.lang | 16 +++---- htdocs/langs/fi_FI/other.lang | 16 +++---- htdocs/langs/fr_FR/other.lang | 16 +++---- htdocs/langs/hu_HU/other.lang | 16 +++---- htdocs/langs/is_IS/other.lang | 16 +++---- htdocs/langs/it_IT/other.lang | 16 +++---- htdocs/langs/nb_NO/other.lang | 16 +++---- htdocs/langs/nl_NL/other.lang | 16 +++---- htdocs/langs/pl_PL/other.lang | 16 +++---- htdocs/langs/pt_BR/other.lang | 8 ++-- htdocs/langs/pt_PT/other.lang | 16 +++---- htdocs/langs/ro_RO/other.lang | 16 +++---- htdocs/langs/ru_RU/other.lang | 16 +++---- htdocs/langs/ru_UA/other.lang | 16 +++---- htdocs/langs/sl_SI/other.lang | 16 +++---- htdocs/langs/sv_SE/other.lang | 16 +++---- htdocs/langs/tr_TR/other.lang | 16 +++---- 34 files changed, 400 insertions(+), 231 deletions(-) diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php index b74ebd11938..de1a87ffe7e 100644 --- a/htdocs/comm/propal.php +++ b/htdocs/comm/propal.php @@ -526,7 +526,7 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G // Envoi de la propal require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; - $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt); + $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt,-1); if ($mailfile->error) { setEventMessage($mailfile->error, 'errors'); @@ -2238,12 +2238,34 @@ else $formmail->substit['__PROPREF__']=$object->ref; $formmail->substit['__SIGNATURE__']=$user->signature; $formmail->substit['__PERSONALIZED__']=''; + $formmail->substit['__CONTACTCIVNAME__']=''; + + //Find the good contact adress + $custcontact=''; + $contactarr=array(); + $contactarr=$object->liste_contact(-1,'external'); + + if (is_array($contactarr) && count($contactarr)>0) { + foreach($contactarr as $contact) { + if ($contact['libelle']==$langs->trans('TypeContact_propal_external_CUSTOMER')) { + $contactstatic=new Contact($db); + $contactstatic->fetch($contact['id']); + $custcontact=$contactstatic->getFullName($langs,1); + } + } + + if (!empty($custcontact)) { + $formmail->substit['__CONTACTCIVNAME__']=$custcontact; + } + } + // Tableau des parametres complementaires $formmail->param['action']='send'; $formmail->param['models']='propal_send'; $formmail->param['id']=$object->id; $formmail->param['returnurl']=$_SERVER["PHP_SELF"].'?id='.$object->id; - + + // Init list of files if (GETPOST("mode")=='init') { diff --git a/htdocs/commande/fiche.php b/htdocs/commande/fiche.php index 52b7761adbe..477fb64d896 100644 --- a/htdocs/commande/fiche.php +++ b/htdocs/commande/fiche.php @@ -1212,7 +1212,7 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G // Send mail require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; - $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt); + $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt,-1); if ($mailfile->error) { $mesg='
'.$mailfile->error.'
'; @@ -2442,6 +2442,26 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G $formmail->substit['__ORDERREF__']=$object->ref; $formmail->substit['__SIGNATURE__']=$user->signature; $formmail->substit['__PERSONALIZED__']=''; + $formmail->substit['__CONTACTCIVNAME__']=''; + + $custcontact=''; + $contactarr=array(); + $contactarr=$object->liste_contact(-1,'external'); + + if (is_array($contactarr) && count($contactarr)>0) { + foreach($contactarr as $contact) { + if ($contact['libelle']==$langs->trans('TypeContact_commande_external_CUSTOMER')) { + $contactstatic=new Contact($db); + $contactstatic->fetch($contact['id']); + $custcontact=$contactstatic->getFullName($langs,1); + } + } + + if (!empty($custcontact)) { + $formmail->substit['__CONTACTCIVNAME__']=$custcontact; + } + } + // Tableau des parametres complementaires $formmail->param['action']='send'; $formmail->param['models']='order_send'; diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index 96fca70af4c..cdfe2a1f211 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -3531,6 +3531,31 @@ else if ($id > 0 || ! empty($ref)) $formmail->substit['__FACREF__']=$object->ref; $formmail->substit['__SIGNATURE__']=$user->signature; $formmail->substit['__PERSONALIZED__']=''; + $formmail->substit['__CONTACTCIVNAME__']=''; + + //Find the good contact adress + $custcontact=''; + $contactarr=array(); + $contactarr=$object->liste_contact(-1,'external'); + + if (is_array($contactarr) && count($contactarr)>0) { + foreach($contactarr as $contact) { + if ($contact['libelle']==$langs->trans('TypeContact_facture_external_BILLING')) { + + require_once DOL_DOCUMENT_ROOT . '/contact/class/contact.class.php'; + + $contactstatic=new Contact($db); + $contactstatic->fetch($contact['id']); + $custcontact=$contactstatic->getFullName($langs,1); + } + } + + if (!empty($custcontact)) { + $formmail->substit['__CONTACTCIVNAME__']=$custcontact; + } + } + + // Tableau des parametres complementaires du post $formmail->param['action']=$action; $formmail->param['models']=$modelmail; diff --git a/htdocs/core/class/html.formmail.class.php b/htdocs/core/class/html.formmail.class.php index 37ad8a6384c..f00843f9af1 100644 --- a/htdocs/core/class/html.formmail.class.php +++ b/htdocs/core/class/html.formmail.class.php @@ -596,7 +596,7 @@ class FormMail if (!empty($conf->global->FCKEDITOR_ENABLE_MAIL)) { $this->withfckeditor=1; } - $doleditor=new DolEditor('message',$defaultmessage,'',280,$this->ckeditortoolbar,'In',true,true,$this->withfckeditor,8,72); + $doleditor=new DolEditor('message',nl2br($defaultmessage),'',280,$this->ckeditortoolbar,'In',true,true,$this->withfckeditor,8,72); $out.= $doleditor->Create(1); } $out.= "\n"; diff --git a/htdocs/expedition/fiche.php b/htdocs/expedition/fiche.php index bcb55bb3ef8..d58b6d60f4f 100644 --- a/htdocs/expedition/fiche.php +++ b/htdocs/expedition/fiche.php @@ -412,7 +412,7 @@ if ($action == 'send' && ! GETPOST('addfile','alpha') && ! GETPOST('removedfile' $from = GETPOST('fromname','alpha') . ' <' . GETPOST('frommail','alpha') .'>'; $replyto = GETPOST('replytoname','alpha'). ' <' . GETPOST('replytomail','alpha').'>'; - $message = GETPOST('message','alpha'); + $message = GETPOST('message'); $sendtocc = GETPOST('sendtocc','alpha'); $deliveryreceipt = GETPOST('deliveryreceipt','alpha'); @@ -442,7 +442,7 @@ if ($action == 'send' && ! GETPOST('addfile','alpha') && ! GETPOST('removedfile' // Send mail require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; - $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt); + $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt,-1); if ($mailfile->error) { $mesg='
'.$mailfile->error.'
'; @@ -1293,7 +1293,7 @@ else * Boutons actions */ - if ($user->societe_id == 0) + if (($user->societe_id == 0) && ($action!='presend')) { print '
'; @@ -1457,6 +1457,40 @@ else $formmail->substit['__SHIPPINGREF__']=$object->ref; $formmail->substit['__SIGNATURE__']=$user->signature; $formmail->substit['__PERSONALIZED__']=''; + $formmail->substit['__CONTACTCIVNAME__']=''; + + //Find the good contact adress + //Find the good contact adress + if ($typeobject == 'commande' && $object->$typeobject->id && ! empty($conf->commande->enabled)) { + $objectsrc=new Commande($db); + $objectsrc->fetch($object->$typeobject->id); + } + if ($typeobject == 'propal' && $object->$typeobject->id && ! empty($conf->propal->enabled)) { + $objectsrc=new Propal($db); + $objectsrc->fetch($object->$typeobject->id); + } + $custcontact=''; + $contactarr=array(); + $contactarr=$objectsrc->liste_contact(-1,'external'); + + if (is_array($contactarr) && count($contactarr)>0) { + foreach($contactarr as $contact) { + + if ($contact['libelle']==$langs->trans('TypeContact_commande_external_CUSTOMER')) { + + require_once DOL_DOCUMENT_ROOT . '/contact/class/contact.class.php'; + + $contactstatic=new Contact($db); + $contactstatic->fetch($contact['id']); + $custcontact=$contactstatic->getFullName($langs,1); + } + } + + if (!empty($custcontact)) { + $formmail->substit['__CONTACTCIVNAME__']=$custcontact; + } + } + // Tableau des parametres complementaires $formmail->param['action']='send'; $formmail->param['models']='shipping_send'; diff --git a/htdocs/fichinter/fiche.php b/htdocs/fichinter/fiche.php index b67c2a0df16..f7371f42066 100644 --- a/htdocs/fichinter/fiche.php +++ b/htdocs/fichinter/fiche.php @@ -662,7 +662,7 @@ if ($action == 'send' && ! GETPOST('cancel','alpha') && (empty($conf->global->MA $from = GETPOST('fromname','alpha') . ' <' . GETPOST('frommail','alpha') .'>'; $replyto = GETPOST('replytoname','alpha'). ' <' . GETPOST('replytomail','alpha').'>'; - $message = GETPOST('message','alpha'); + $message = GETPOST('message'); $sendtocc = GETPOST('sendtocc','alpha'); $deliveryreceipt = GETPOST('deliveryreceipt','alpha'); @@ -692,7 +692,7 @@ if ($action == 'send' && ! GETPOST('cancel','alpha') && (empty($conf->global->MA // Envoi de la propal require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; - $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt); + $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt,-1); if ($mailfile->error) { $mesg='
'.$mailfile->error.'
'; @@ -702,8 +702,8 @@ if ($action == 'send' && ! GETPOST('cancel','alpha') && (empty($conf->global->MA $result=$mailfile->sendfile(); if ($result) { - $mesg='
'.$langs->trans('MailSuccessfulySent',$mailfile->getValidAddress($from,2),$mailfile->getValidAddress($sendto,2)).'.
'; - + $mesg=$langs->trans('MailSuccessfulySent',$mailfile->getValidAddress($from,2),$mailfile->getValidAddress($sendto,2)); + setEventMessage($mesg); $error=0; // Initialisation donnees @@ -729,7 +729,7 @@ if ($action == 'send' && ! GETPOST('cancel','alpha') && (empty($conf->global->MA { // Redirect here // This avoid sending mail twice if going out and then back to page - header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id.'&msg='.urlencode($mesg)); + header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; } } @@ -1365,7 +1365,7 @@ else if ($id > 0 || ! empty($ref)) if ($user->societe_id == 0) { - if ($action != 'editdescription') + if ($action != 'editdescription' && ($action != 'presend')) { // Validate if ($object->statut == 0 && $user->rights->ficheinter->creer && count($object->lines) > 0) @@ -1518,6 +1518,28 @@ else if ($id > 0 || ! empty($ref)) $formmail->substit['__FICHINTERREF__']=$object->ref; $formmail->substit['__SIGNATURE__']=$user->signature; $formmail->substit['__PERSONALIZED__']=''; + $formmail->substit['__CONTACTCIVNAME__']=''; + + //Find the good contact adress + $custcontact=''; + $contactarr=array(); + $contactarr=$object->liste_contact(-1,'external'); + + if (is_array($contactarr) && count($contactarr)>0) { + foreach($contactarr as $contact) { + if ($contact['libelle']==$langs->trans('TypeContact_fichinter_external_CUSTOMER')) { + require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; + $contactstatic=new Contact($db); + $contactstatic->fetch($contact['id']); + $custcontact=$contactstatic->getFullName($langs,1); + } + } + + if (!empty($custcontact)) { + $formmail->substit['__CONTACTCIVNAME__']=$custcontact; + } + } + // Tableau des parametres complementaires $formmail->param['action']='send'; $formmail->param['models']='fichinter_send'; diff --git a/htdocs/fourn/commande/fiche.php b/htdocs/fourn/commande/fiche.php index 4baa7ac50f5..6a369873755 100644 --- a/htdocs/fourn/commande/fiche.php +++ b/htdocs/fourn/commande/fiche.php @@ -746,24 +746,24 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G // if (is_readable($file)) // { - if ($_POST['sendto']) + if (GETPOST('sendto','alpha')) { // Le destinataire a ete fourni via le champ libre - $sendto = $_POST['sendto']; + $sendto = GETPOST('sendto','alpha'); $sendtoid = 0; } - elseif ($_POST['receiver'] != '-1') + elseif (GETPOST('receiver','alpha') != '-1') { // Recipient was provided from combo list - if ($_POST['receiver'] == 'thirdparty') // Id of third party + if (GETPOST('receiver','alpha') == 'thirdparty') // Id of third party { $sendto = $object->client->email; $sendtoid = 0; } else // Id du contact { - $sendto = $object->client->contact_get_property($_POST['receiver'],'email'); - $sendtoid = $_POST['receiver']; + $sendto = $object->client->contact_get_property(GETPOST('receiver','alpha'),'email'); + $sendtoid = GETPOST('receiver','alpha'); } } @@ -771,15 +771,15 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G { $langs->load("commercial"); - $from = $_POST['fromname'] . ' <' . $_POST['frommail'] .'>'; - $replyto = $_POST['replytoname']. ' <' . $_POST['replytomail'].'>'; - $message = $_POST['message']; - $sendtocc = $_POST['sendtocc']; - $deliveryreceipt = $_POST['deliveryreceipt']; + $from = GETPOST('fromname','alpha') . ' <' . GETPOST('frommail','alpha') .'>'; + $replyto = GETPOST('replytoname','alpha'). ' <' . GETPOST('replytomail','alpha').'>'; + $message = GETPOST('message'); + $sendtocc = GETPOST('sendtocc','alpha'); + $deliveryreceipt = GETPOST('deliveryreceipt','alpha'); if ($action == 'send') { - if (dol_strlen($_POST['subject'])) $subject=$_POST['subject']; + if (dol_strlen(GETPOST('subject'))) $subject=GETPOST('subject'); else $subject = $langs->transnoentities('CustomerOrder').' '.$object->ref; $actiontypecode='AC_SUP_ORD'; $actionmsg = $langs->transnoentities('MailSentBy').' '.$from.' '.$langs->transnoentities('To').' '.$sendto.".\n"; @@ -803,7 +803,7 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G // Send mail require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; - $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt); + $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt,-1); if ($mailfile->error) { setEventMessage($mailfile->error, 'errors'); @@ -840,8 +840,8 @@ if ($action == 'send' && ! GETPOST('addfile') && ! GETPOST('removedfile') && ! G else { // Redirect here - // This avoid sending mail twice if going out and then back to page - header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id.'&mesg='.urlencode($mesg)); + // This avoid sending mail twice if going out and then back to page + header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; } } @@ -1908,6 +1908,28 @@ elseif (! empty($object->id)) $formmail->substit['__ORDERREF__']=$object->ref; $formmail->substit['__SIGNATURE__']=$user->signature; $formmail->substit['__PERSONALIZED__']=''; + $formmail->substit['__CONTACTCIVNAME__']=''; + + //Find the good contact adress + $custcontact=''; + $contactarr=array(); + $contactarr=$object->liste_contact(-1,'external'); + + if (is_array($contactarr) && count($contactarr)>0) { + foreach($contactarr as $contact) { + if ($contact['libelle']==$langs->trans('TypeContact_order_supplier_external_BILLING')) { + require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; + $contactstatic=new Contact($db); + $contactstatic->fetch($contact['id']); + $custcontact=$contactstatic->getFullName($langs,1); + } + } + + if (!empty($custcontact)) { + $formmail->substit['__CONTACTCIVNAME__']=$custcontact; + } + } + // Tableau des parametres complementaires $formmail->param['action']='send'; $formmail->param['models']='order_supplier_send'; diff --git a/htdocs/fourn/facture/fiche.php b/htdocs/fourn/facture/fiche.php index 571742a977d..b726d39231a 100644 --- a/htdocs/fourn/facture/fiche.php +++ b/htdocs/fourn/facture/fiche.php @@ -737,10 +737,10 @@ if ($action == 'send' && ! $_POST['addfile'] && ! $_POST['removedfile'] && ! $_P // Send mail require_once DOL_DOCUMENT_ROOT.'/core/class/CMailFile.class.php'; - $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt); + $mailfile = new CMailFile($subject,$sendto,$from,$message,$filepath,$mimetype,$filename,$sendtocc,'',$deliveryreceipt,-1); if ($mailfile->error) { - $mesg='
'.$mailfile->error.'
'; + setEventMessage($mailfile->error,'errors'); } else { @@ -748,7 +748,8 @@ if ($action == 'send' && ! $_POST['addfile'] && ! $_POST['removedfile'] && ! $_P if ($result) { $mesg=$langs->trans('MailSuccessfulySent',$mailfile->getValidAddress($from,2),$mailfile->getValidAddress($sendto,2)); // Must not contain " - + setEventMessage($mesg); + $error=0; // Initialisation donnees @@ -776,7 +777,7 @@ if ($action == 'send' && ! $_POST['addfile'] && ! $_POST['removedfile'] && ! $_P { // Redirect here // This avoid sending mail twice if going out and then back to page - header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id.'&mesg='.urlencode($mesg)); + header('Location: '.$_SERVER["PHP_SELF"].'?id='.$object->id); exit; } } @@ -1241,6 +1242,7 @@ else $productstatic = new Product($db); $object->fetch($id); + $object->fetch_thirdparty(); $societe = new Fournisseur($db); $societe->fetch($object->socid); @@ -2034,7 +2036,7 @@ else * Show mail form */ if ($action == 'presend') - { + { $ref = dol_sanitizeFileName($object->ref); include_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; $fileparams = dol_most_recent_file($conf->fournisseur->facture->dir_output.'/'.get_exdir($object->id,2).$ref, preg_quote($object->ref,'/')); @@ -2089,6 +2091,28 @@ else $formmail->substit['__FACREF__']=$object->ref; $formmail->substit['__SIGNATURE__']=$user->signature; $formmail->substit['__PERSONALIZED__']=''; + $formmail->substit['__CONTACTCIVNAME__']=''; + + //Find the good contact adress + $custcontact=''; + $contactarr=array(); + $contactarr=$object->liste_contact(-1,'external'); + + if (is_array($contactarr) && count($contactarr)>0) { + foreach($contactarr as $contact) { + if ($contact['libelle']==$langs->trans('TypeContact_invoice_supplier_external_BILLING')) { + require_once DOL_DOCUMENT_ROOT.'/contact/class/contact.class.php'; + $contactstatic=new Contact($db); + $contactstatic->fetch($contact['id']); + $custcontact=$contactstatic->getFullName($langs,1); + } + } + + if (!empty($custcontact)) { + $formmail->substit['__CONTACTCIVNAME__']=$custcontact; + } + } + // Tableau des parametres complementaires $formmail->param['action']='send'; $formmail->param['models']='invoice_supplier_send'; diff --git a/htdocs/langs/bg_BG/other.lang b/htdocs/langs/bg_BG/other.lang index a534bbc1218..a38a46300a2 100644 --- a/htdocs/langs/bg_BG/other.lang +++ b/htdocs/langs/bg_BG/other.lang @@ -56,14 +56,14 @@ Miscellanous=Разни NbOfActiveNotifications=Броят на нотификациите PredefinedMailTest=Това е тест поща. \ NПромените две линии са разделени с нов ред. \n\n __ SIGNATURE__ PredefinedMailTestHtml=Това е тест поща (тест дума трябва да бъде с удебелен шрифт).
Двете линии са разделени от връщане на каретката.

__SIGNATURE__ -PredefinedMailContentSendInvoice=Тук ще намерите фактура __ FACREF__ \n\n от __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Бихме искали да ви предупредя, че фактурата FACREF__ __ изглежда не се заплащат. Така че това е фактурата в прикачения файл отново, за напомняне. \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ -PredefinedMailContentSendProposal=Тук ще намерите търговския propoal __ PROPREF__ \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ -PredefinedMailContentSendOrder=Тук ще намерите за __ ORDERREF__ \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Тук ще намерите нашата цел __ ORDERREF__ \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Тук ще намерите фактура __ FACREF__ \n\n от __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ -PredefinedMailContentSendShipping=Тук ще намерите корабоплаването __ SHIPPINGREF__ \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ -PredefinedMailContentSendFichInter=Тук ще намерите намесата __ FICHINTERREF__ \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Тук ще намерите фактура __ FACREF__ \n\n от __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Бихме искали да ви предупредя, че фактурата FACREF__ __ изглежда не се заплащат. Така че това е фактурата в прикачения файл отново, за напомняне. \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Тук ще намерите търговския propoal __ PROPREF__ \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Тук ще намерите за __ ORDERREF__ \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Тук ще намерите нашата цел __ ORDERREF__ \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Тук ще намерите фактура __ FACREF__ \n\n от __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Тук ще намерите корабоплаването __ SHIPPINGREF__ \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Тук ще намерите намесата __ FICHINTERREF__ \n\n __ PERSONALIZED__Sincerely \n\n __ SIGNATURE__ DemoDesc=Dolibarr е компактен ERP / CRM състои от няколко функционални модули. Демо, което включва всички модули не означава нищо, тъй като това никога не се случва. Така че, няколко демо профили са на разположение. ChooseYourDemoProfil=Изберете профила демо, които съответстват на вашата дейност ... DemoFundation=Управление на членовете на фондация diff --git a/htdocs/langs/ca_ES/other.lang b/htdocs/langs/ca_ES/other.lang index 2be64f5bf8d..04e0a957cf6 100644 --- a/htdocs/langs/ca_ES/other.lang +++ b/htdocs/langs/ca_ES/other.lang @@ -48,14 +48,14 @@ Miscellanous=Diversos NbOfActiveNotifications=Número notificacions PredefinedMailTest=Això és un correu de prova.\nLes 2 línies estan separades per un retorn de carro a la línia. PredefinedMailTestHtml=Això és un e-mail de prova (la paraula prova ha d'estar en negreta).
Les 2 línies estan separades per un retorn de carro en la línia -PredefinedMailContentSendInvoice=Us adjuntem la factura __FACREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Posem en el seu coneixement que la factura __FACREF__ sembla no estar pagada. Se l'adjuntem doncs, perquè pugui revisar-la.\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Us adjuntem el pressupost __PROPREF__ \n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Us adjuntem la comanda __ORDERREF__ \n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Us adjuntem la nostra comanda __ORDERREF__ \n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Us adjuntem la factura __FACREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Us adjuntem l'expedició __SHIPPINGREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Us adjuntem l'intervenció __FICHINTERREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Us adjuntem la factura __FACREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Posem en el seu coneixement que la factura __FACREF__ sembla no estar pagada. Se l'adjuntem doncs, perquè pugui revisar-la.\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Us adjuntem el pressupost __PROPREF__ \n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Us adjuntem la comanda __ORDERREF__ \n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Us adjuntem la nostra comanda __ORDERREF__ \n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Us adjuntem la factura __FACREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Us adjuntem l'expedició __SHIPPINGREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Us adjuntem l'intervenció __FICHINTERREF__\n\n__PERSONALIZED__Cordialment\n\n__SIGNATURE__ DemoDesc=Dolibarr és un programari per a la gestió de negocis (professionals o associacions), compost de mòduls funcionals independents i opcionals. Una demostració que inclogui tots aquests mòduls no té sentit perquè no utilitzarà tots els mòduls. A més, té disponibles diversos tipus de perfils de demostració. ChooseYourDemoProfil=Seleccioneu el perfil de demostració que millor correspongui a la seva activitat ... DemoFundation=Gestió de membres d'una associació diff --git a/htdocs/langs/da_DK/other.lang b/htdocs/langs/da_DK/other.lang index 63924c7af90..5aee3d71a07 100644 --- a/htdocs/langs/da_DK/other.lang +++ b/htdocs/langs/da_DK/other.lang @@ -175,7 +175,7 @@ ExternalSites=Eksterne sites // START - Lines generated via autotranslator.php tool (2010-09-04 01:33:40). // Reference language: en_US -> da_DA -PredefinedMailContentSendSupplierOrder=Du vil her finde vores ordre __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Du vil her finde vores ordre __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n WeightUnitpound=pund VolumeUnitounce=unse VolumeUnitlitre=liter @@ -212,9 +212,9 @@ Notify_MEMBER_VALIDATE=Medlem valideret Notify_MEMBER_SUBSCRIPTION=Medlem abonnerer Notify_MEMBER_RESILIATE=Medlem resiliated Notify_MEMBER_DELETE=Medlem slettet -PredefinedMailContentSendSupplierInvoice=Du vil her finde fakturaen __FACREF__ \n\n__PERSONALIZED__Sincerely \n\n -PredefinedMailContentSendShipping=Du vil her finde shipping __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely \n\n -PredefinedMailContentSendFichInter=Du vil her finde interventionen __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Du vil her finde fakturaen __FACREF__ \n\n__PERSONALIZED__Sincerely \n\n +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Du vil her finde shipping __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely \n\n +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Du vil her finde interventionen __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n Top=Top Bottom=Bund Left=Venstre @@ -234,9 +234,9 @@ Export=Eksport // START - Lines generated via autotranslator.php tool (2012-02-29 15:59:19). // Reference language: en_US -> da_DK -PredefinedMailContentSendInvoice=Du vil her finde fakturaen __FACREF__ \n\n__PERSONALIZED__ venlig hilsen \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Vi vil gerne advare dig om, at fakturaen __FACREF__ synes ikke betales. Så dette er den faktura i vedhæftningen igen, som en påmindelse. \n\n__PERSONALIZED__ venlig hilsen \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Du vil her finde den kommercielle propoal __PROPREF__ \n\n__PERSONALIZED__ venlig hilsen \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Du vil her finde den rækkefølge __ORDERREF__ \n\n__PERSONALIZED__ venlig hilsen \n\n__SIGNATURE__ -ShipmentValidatedInDolibarr=Forsendelse %s valideret i Dolibarr +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Du vil her finde fakturaen __FACREF__ \n\n__PERSONALIZED__ venlig hilsen \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Vi vil gerne advare dig om, at fakturaen __FACREF__ synes ikke betales. Så dette er den faktura i vedhæftningen igen, som en påmindelse. \n\n__PERSONALIZED__ venlig hilsen \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Du vil her finde den kommercielle propoal __PROPREF__ \n\n__PERSONALIZED__ venlig hilsen \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Du vil her finde den rækkefølge __ORDERREF__ \n\n__PERSONALIZED__ venlig hilsen \n\n__SIGNATURE__ +ShipmentValidatedInDolibarr=__CONTACTCIVNAME__ \n\n Forsendelse %s valideret i Dolibarr // STOP - Lines generated via autotranslator.php tool (2012-02-29 15:59:21). diff --git a/htdocs/langs/de_AT/other.lang b/htdocs/langs/de_AT/other.lang index 3629e008956..ff3481857d3 100644 --- a/htdocs/langs/de_AT/other.lang +++ b/htdocs/langs/de_AT/other.lang @@ -22,10 +22,10 @@ AttachANewFile=Neue Datei/Dokument anhängen LinkedObject=Verknüpftes Objekt Miscellanous=Verschiedenes NbOfActiveNotifications=Anzahl aktiver Benachrichtigungen -PredefinedMailContentSendInvoice=Bitte entnehmen Sie dem Anhang die Rechnung __FACREF__\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Bedauerlicherweise scheint die Rechnung __FACREF__ bislang unbeglichen. Als Erinnerung übersenden wir Ihnen diese nochmals im Anhang\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Bitte entnehmen Sie dem Anhang unser Angebot __PROPREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Bitte entnehmen Sie dem Anhang die Bestellung __ORDERREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Bitte entnehmen Sie dem Anhang die Rechnung __FACREF__\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Bedauerlicherweise scheint die Rechnung __FACREF__ bislang unbeglichen. Als Erinnerung übersenden wir Ihnen diese nochmals im Anhang\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Bitte entnehmen Sie dem Anhang unser Angebot __PROPREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Bitte entnehmen Sie dem Anhang die Bestellung __ORDERREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ ChooseYourDemoProfil=Bitte wählen Sie das Demo-Profil das Ihrem Berufsfeld am ehesten entspricht DemoFundation=Verwalten Sie die Mitglieder einer Stiftung DemoFundation2=Verwalten Sie die Mitglieder und Bankkonten einer Stiftung @@ -156,7 +156,7 @@ YouReceiveMailBecauseOfNotification=Sie erhalten diese Nachricht, weil Ihre E-Ma YouReceiveMailBecauseOfNotification2=Sie erhalten dieses Mail aufgrund folgender Benachrichtigung: ExternalSites=Externe Seiten -PredefinedMailContentSendSupplierOrder=Hier finden Sie unser Bestellformular __ORDERREF__ \n\nMit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Hier finden Sie unser Bestellformular __ORDERREF__ \n\nMit freundlichen Grüßen\n\n__SIGNATURE__ WeightUnitpound=Pfund VolumeUnitounce=Unze VolumeUnitlitre=Liter @@ -191,9 +191,9 @@ Notify_MEMBER_VALIDATE=Mitglied validiert Notify_MEMBER_SUBSCRIPTION=Mitglied gezeichneten Notify_MEMBER_RESILIATE=Mitglied resiliated Notify_MEMBER_DELETE=Mitglied gelöscht -PredefinedMailContentSendSupplierInvoice=Hier finden Sie die Rechnung __FACREF__ \n\nSincerely \n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Hier finden Sie die Versandkosten __SHIPPINGREF__ \n\nSincerely \n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Hier finden Sie die Intervention __FICHINTERREF__ \n\nSincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Hier finden Sie die Rechnung __FACREF__ \n\nSincerely \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Hier finden Sie die Versandkosten __SHIPPINGREF__ \n\nSincerely \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Hier finden Sie die Intervention __FICHINTERREF__ \n\nSincerely \n\n__SIGNATURE__ Top=Top Bottom=Boden Left=Links diff --git a/htdocs/langs/de_DE/other.lang b/htdocs/langs/de_DE/other.lang index 01ddd534a0c..a8a8e18ae63 100644 --- a/htdocs/langs/de_DE/other.lang +++ b/htdocs/langs/de_DE/other.lang @@ -55,14 +55,14 @@ Miscellanous=Verschiedenes NbOfActiveNotifications=Anzahl aktiver Benachrichtigungen PredefinedMailTest=Dies ist ein Test-Mail.\n Die beiden Zeilen sind durch eine Zeilenschaltung getrennt. PredefinedMailTestHtml=Dies ist ein (HTML)-Test Mail (das Wort Test muss in Fettschrift erscheinen).
Die beiden Zeilen sollteb durch eine Zeilenschaltung getrennt sein. -PredefinedMailContentSendInvoice=Bitte entnehmen Sie dem Anhang die Rechnung __FACREF__\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Bedauerlicherweise scheint die Rechnung __FACREF__ bislang unbeglichen. Als Erinnerung übersenden wir Ihnen diese nochmals im Anhang\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Bitte entnehmen Sie dem Anhang unser Angebot __PROPREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Bitte entnehmen Sie dem Anhang die Bestellung __ORDERREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Hier finden Sie unser Bestellformular __ORDERREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Anbei erhalten Sie die Rechnung __ FACREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Als Anlage erhalten Sie unsere Versandkosten __ SHIPPINGREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Anbei finden Sie die Intervention __ FICHINTERREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n_n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Bitte entnehmen Sie dem Anhang die Rechnung __FACREF__\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Bedauerlicherweise scheint die Rechnung __FACREF__ bislang unbeglichen. Als Erinnerung übersenden wir Ihnen diese nochmals im Anhang\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Bitte entnehmen Sie dem Anhang unser Angebot __PROPREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Bitte entnehmen Sie dem Anhang die Bestellung __ORDERREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Hier finden Sie unser Bestellformular __ORDERREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Anbei erhalten Sie die Rechnung __ FACREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Als Anlage erhalten Sie unsere Versandkosten __ SHIPPINGREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Anbei finden Sie die Intervention __ FICHINTERREF__ \n\n__PERSONALIZED__Mit freundlichen Grüßen\n_n__SIGNATURE__ DemoDesc=Bei Dolibarr handelt es sich um ein kompaktes ERP/CRM-System, bestehend aus einzelnen Modulen. Da eine Demo aller Module kaum eine praxisnahe Anwendung darstellt, stehen Ihnen unterschiedliche Demo-Profile zur Verfügung. ChooseYourDemoProfil=Bitte wählen Sie das Demo-Profil das Ihrem Berufsfeld am ehesten entspricht DemoFundation=Verwalten Sie die Mitglieder einer Stiftung diff --git a/htdocs/langs/el_GR/other.lang b/htdocs/langs/el_GR/other.lang index 8981b6bccb7..2e2671f60a5 100644 --- a/htdocs/langs/el_GR/other.lang +++ b/htdocs/langs/el_GR/other.lang @@ -115,7 +115,7 @@ FONTFORPDF=Freemono // START - Lines generated via autotranslator.php tool (2011-06-26 15:35:22). // Reference language: en_US -> el_GR ToolsDesc=Αυτή η περιοχή είναι αφιερωμένη στην ομάδα διάφορα εργαλεία που είναι διαθέσιμα δεν σε άλλες καταχωρήσεις μενού.

Αυτά τα εργαλεία είναι προσβάσιμα από το μενού στο πλάι. -PredefinedMailContentSendShipping=Θα βρείτε εδώ τη ναυτιλία __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Θα βρείτε εδώ τη ναυτιλία __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ Top=Κορυφή Bottom=Κάτω μέρος Left=Αριστερά @@ -187,13 +187,13 @@ Notify_MEMBER_VALIDATE=Επικυρωθεί μέλη Notify_MEMBER_SUBSCRIPTION=Εγγραφεί μέλος Notify_MEMBER_RESILIATE=Resiliated μέλη Notify_MEMBER_DELETE=Διαγράφεται μέλη -PredefinedMailContentSendInvoice=Εδώ θα βρείτε το τιμολόγιο __ FACREF__ \n\n __PERSONALIZED__Ειλικρινά \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Θα θέλαμε να σας προειδοποιήσω ότι το τιμολόγιο FACREF__ __ φαίνεται να μη πληρώνονται. Έτσι, αυτό είναι το τιμολόγιο στο συνημμένο και πάλι, ως υπενθύμιση. Ειλικρινά \n\n__PERSONALIZED__ \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Εδώ θα βρείτε την εμπορική propoal __ PROPREF__ \n\n__PERSONALIZED__ Ειλικρινά \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Εδώ θα βρείτε τη σειρά __ ORDERREF__ \n\n__PERSONALIZED__ Ειλικρινά \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Εδώ θα βρείτε για μας __ ORDERREF__ \n\n__PERSONALIZED__ Ειλικρινά \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Εδώ θα βρείτε το τιμολόγιο __ FACREF__ \n\n__PERSONALIZED__ Ειλικρινά \n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Θα βρείτε εδώ την παρέμβαση __ FICHINTERREF__ \n\n__PERSONALIZED__ Ειλικρινά \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Εδώ θα βρείτε το τιμολόγιο __ FACREF__ \n\n __PERSONALIZED__Ειλικρινά \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Θα θέλαμε να σας προειδοποιήσω ότι το τιμολόγιο FACREF__ __ φαίνεται να μη πληρώνονται. Έτσι, αυτό είναι το τιμολόγιο στο συνημμένο και πάλι, ως υπενθύμιση. Ειλικρινά \n\n__PERSONALIZED__ \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Εδώ θα βρείτε την εμπορική propoal __ PROPREF__ \n\n__PERSONALIZED__ Ειλικρινά \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Εδώ θα βρείτε τη σειρά __ ORDERREF__ \n\n__PERSONALIZED__ Ειλικρινά \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Εδώ θα βρείτε για μας __ ORDERREF__ \n\n__PERSONALIZED__ Ειλικρινά \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Εδώ θα βρείτε το τιμολόγιο __ FACREF__ \n\n__PERSONALIZED__ Ειλικρινά \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Θα βρείτε εδώ την παρέμβαση __ FICHINTERREF__ \n\n__PERSONALIZED__ Ειλικρινά \n\n__SIGNATURE__ DemoDesc=Dolibarr είναι ένα συμπαγές ERP / CRM αποτελείται από διάφορες λειτουργικές ενότητες. Ένα demo που περιλαμβάνει όλες τις ενότητες δεν σημαίνει τίποτα, όπως ποτέ δεν συμβαίνει αυτό. Έτσι, πολλά προφίλ επίδειξη είναι διαθέσιμα. ChooseYourDemoProfil=Επιλέξτε το προφίλ που ταιριάζει με επίδειξη δραστηριότητά σας ... DemoFundation=Διαχειριστείτε τα μέλη του ιδρύματος diff --git a/htdocs/langs/en_IN/other.lang b/htdocs/langs/en_IN/other.lang index 3b944fa7e92..2b3fffed18d 100644 --- a/htdocs/langs/en_IN/other.lang +++ b/htdocs/langs/en_IN/other.lang @@ -1,3 +1,3 @@ # Dolibarr language file - en_US - other CHARSET=UTF-8 -PredefinedMailContentSendProposal=You will find here the quotation __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n You will find here the quotation __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ diff --git a/htdocs/langs/en_US/other.lang b/htdocs/langs/en_US/other.lang index 6a46d319b15..bcba133ba6d 100644 --- a/htdocs/langs/en_US/other.lang +++ b/htdocs/langs/en_US/other.lang @@ -49,14 +49,14 @@ Miscellanous=Miscellaneous NbOfActiveNotifications=Number of notifications PredefinedMailTest=This is a test mail.\nThe two lines are separated by a carriage return.\n\n__SIGNATURE__ PredefinedMailTestHtml=This is a test mail (the word test must be in bold).
The two lines are separated by a carriage return.

__SIGNATURE__ -PredefinedMailContentSendInvoice=You will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=We would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendProposal=You will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendOrder=You will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=You will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=You will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendShipping=You will find here the shipping __SHIPPINGREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=You will find here the intervention __FICHINTERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n You will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n We would like to warn you that the invoice __FACREF__ seems to not being payed. So this is the invoice in attachment again, as a reminder.\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n You will find here the commercial proposal __PROPREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n You will find here the order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n You will find here our order __ORDERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n You will find here the invoice __FACREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n You will find here the shipping __SHIPPINGREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n You will find here the intervention __FICHINTERREF__\n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ DemoDesc=Dolibarr is a compact ERP/CRM composed by several functional modules. A demo that includes all modules does not mean anything as this never occurs. So, several demo profiles are available. ChooseYourDemoProfil=Choose the demo profile that match your activity... DemoFundation=Manage members of a foundation diff --git a/htdocs/langs/es_ES/other.lang b/htdocs/langs/es_ES/other.lang index 7ef141abbd0..f86e7e74799 100644 --- a/htdocs/langs/es_ES/other.lang +++ b/htdocs/langs/es_ES/other.lang @@ -48,14 +48,14 @@ Miscellanous=Miscelánea NbOfActiveNotifications=Número notificaciones PredefinedMailTest=Esto es un correo de prueba.\nLas 2 líneas están separadas por un retorno de carro a la línea. PredefinedMailTestHtml=Esto es un e-mail de prueba(la palabra prueba debe de estar en negrita).
Las 2 líneas están separadas por un retorno de carro en la línea -PredefinedMailContentSendInvoice=Le adjuntamos la factura __FACREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Ponemos en su conocimiento que la factura __FACREF__ parece no estar pagada. Se la adjuntamos pues, para que pueda revisarla.\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Le adjuntamos el presupuesto __PROPREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Le adjuntamos el pedido __ORDERREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Le adjuntamos nuestro pedido __ORDERREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Le adjuntamos la factura __FACREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Le adjuntamos la expedición __SHIPPINGREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Le adjuntamos la intervención __FICHINTERREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Le adjuntamos la factura __FACREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Ponemos en su conocimiento que la factura __FACREF__ parece no estar pagada. Se la adjuntamos pues, para que pueda revisarla.\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Le adjuntamos el presupuesto __PROPREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Le adjuntamos el pedido __ORDERREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Le adjuntamos nuestro pedido __ORDERREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Le adjuntamos la factura __FACREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Le adjuntamos la expedición __SHIPPINGREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Le adjuntamos la intervención __FICHINTERREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ DemoDesc=Dolibarr es un software para la gestión de negocios (profesionales o asociaciones), compuesto de módulos funcionales independientes y opcionales. Una demostración que incluya todos estos módulos no tiene sentido porque no utilizará todos los módulos. Además, tiene disponibles varios tipos de perfiles de demostración. ChooseYourDemoProfil=Seleccione el perfil de demostración que mejor corresponda a su actividad... DemoFundation=Gestión de miembros de una asociación diff --git a/htdocs/langs/et_EE/other.lang b/htdocs/langs/et_EE/other.lang index 6a9fd740187..05f03c45749 100644 --- a/htdocs/langs/et_EE/other.lang +++ b/htdocs/langs/et_EE/other.lang @@ -56,14 +56,14 @@ Miscellanous=Muu NbOfActiveNotifications=Teadete arv PredefinedMailTest=See on test mail. \ NThe kaks rida on eraldatud kelgutagastusmärgid. PredefinedMailTestHtml=See on test post (sõna test peab olema paksus kirjas).
2 rida on eraldatud kelgutagastusmärgid. -PredefinedMailContentSendInvoice=Leiad siin arve __FACREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Soovime teid hoiatama, et arve __FACREF__ tundub ei payed. Nii et see on arve arestimine jälle, nagu meeldetuletus. \n\n Lugupidamisega \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Leiad siin kaubandusliku propoal __PROPREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Leiad siin, et __ORDERREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Leiad siin meie, et __ORDERREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Leiad siin arve __FACREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Leiad siin shipping __SHIPPINGREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Leiad siin sekkumine __FICHINTERREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Leiad siin arve __FACREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Soovime teid hoiatama, et arve __FACREF__ tundub ei payed. Nii et see on arve arestimine jälle, nagu meeldetuletus. \n\n Lugupidamisega \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Leiad siin kaubandusliku propoal __PROPREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Leiad siin, et __ORDERREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Leiad siin meie, et __ORDERREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Leiad siin arve __FACREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Leiad siin shipping __SHIPPINGREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Leiad siin sekkumine __FICHINTERREF__ \n\n Lugupidamisega \n\n__SIGNATURE__ DemoDesc=Dolibarr on kompaktne ERP / CRM koosseisus mitmed funktsionaalseid mooduleid. Demo, mis hõlmab kõiki mooduleid ei tähenda midagi, kui see kunagi juhtub. Niisiis, mitu demo profiilid on saadaval. ChooseYourDemoProfil=Vali demo profiili, mis vastavad teie tegevus ... DemoFundation=Halda liikmeid sihtasutus diff --git a/htdocs/langs/fi_FI/other.lang b/htdocs/langs/fi_FI/other.lang index dd4dec72aac..9f0e94160b8 100644 --- a/htdocs/langs/fi_FI/other.lang +++ b/htdocs/langs/fi_FI/other.lang @@ -173,7 +173,7 @@ ExternalSites=Ulkoiset sivustot // START - Lines generated via autotranslator.php tool (2010-09-04 01:33:40). // Reference language: en_US -> fi_FI -PredefinedMailContentSendSupplierOrder=Löydät tästä meidän järjestys __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Löydät tästä meidän järjestys __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ WeightUnitpound=punta VolumeUnitounce=unssi VolumeUnitlitre=litra @@ -224,13 +224,13 @@ Notify_BILL_SENTBYMAIL=Asiakkaan lasku lähetetään postitse Notify_MEMBER_SUBSCRIPTION=Jäsen merkitty Notify_MEMBER_RESILIATE=Jäsen resiliated Notify_MEMBER_DELETE=Jäsen poistettu -PredefinedMailContentSendInvoice=Löydät täältä laskun __ FACREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Haluamme varoittaa, että lasku __ FACREF__ näyttää ei maksanut. Joten tämä on laskun liitetiedostona uudelleen, kuten muistutuksen. \n\n__PERSONALIZED__ Vilpittömästi \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Löydät täältä kaupallinen propoal __ PROPREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Löydät täältä järjestyksessä __ ORDERREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Löydät täältä laskun __ FACREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Löydät täältä merenkulku __ SHIPPINGREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Löydät täältä intervention __ FICHINTERREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Löydät täältä laskun __ FACREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Haluamme varoittaa, että lasku __ FACREF__ näyttää ei maksanut. Joten tämä on laskun liitetiedostona uudelleen, kuten muistutuksen. \n\n__PERSONALIZED__ Vilpittömästi \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Löydät täältä kaupallinen propoal __ PROPREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Löydät täältä järjestyksessä __ ORDERREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Löydät täältä laskun __ FACREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Löydät täältä merenkulku __ SHIPPINGREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Löydät täältä intervention __ FICHINTERREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ StartUpload=Aloita lataaminen CancelUpload=Peruuta Lähetä FileIsTooBig=Files on liian suuri diff --git a/htdocs/langs/fr_FR/other.lang b/htdocs/langs/fr_FR/other.lang index ed49d874b11..9076dff82ba 100644 --- a/htdocs/langs/fr_FR/other.lang +++ b/htdocs/langs/fr_FR/other.lang @@ -48,14 +48,14 @@ Miscellanous=Divers NbOfActiveNotifications=Nombre de notifications PredefinedMailTest=Ceci est un mail de test.\nLes 2 lignes sont séparées par un retour à la ligne.\n\n__SIGNATURE__ PredefinedMailTestHtml=Ceci est un mail de test (le mot test doit être en gras).
Les 2 lignes sont séparées par un retour à la ligne.

__SIGNATURE__ -PredefinedMailContentSendInvoice=Veuillez trouver ci-joint la facture __FACREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Nous apportons à votre connaissance que la facture __FACREF__ ne semble pas avoir été réglée. La voici donc, pour rappel, en pièce jointe.\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Veuillez trouver ci-joint la proposition commerciale __PROPREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Veuillez trouver ci-joint la commande __ORDERREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Veuillez trouver ci-joint notre commande __ORDERREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Veuillez trouver ci-joint la facture __FACREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Veuillez trouver ci-joint le bon d'expédition __SHIPPINGREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Veuillez trouver ci-joint la fiche d'intervention __FICHINTERREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Veuillez trouver ci-joint la facture __FACREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Nous apportons à votre connaissance que la facture __FACREF__ ne semble pas avoir été réglée. La voici donc, pour rappel, en pièce jointe.\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Veuillez trouver ci-joint la proposition commerciale __PROPREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Veuillez trouver ci-joint la commande __ORDERREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Veuillez trouver ci-joint notre commande __ORDERREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Veuillez trouver ci-joint la facture __FACREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Veuillez trouver ci-joint le bon d'expédition __SHIPPINGREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Veuillez trouver ci-joint la fiche d'intervention __FICHINTERREF__\n\n__PERSONALIZED__Cordialement\n\n__SIGNATURE__ DemoDesc=Dolibarr est un logiciel de gestion d'activité (professionnelle ou associative) composé de modules fonctionnels indépendants et optionnels. Une démonstration qui inclut tous ces modules n'a pas de sens car les modules ne sont jamais tous utilisés en même temps. Aussi, plusieurs profils type de démo sont disponibles. ChooseYourDemoProfil=Veuillez choisir le profil de démo qui correspond le mieux à votre activité... DemoFundation=Gestion des adhérents d'une association diff --git a/htdocs/langs/hu_HU/other.lang b/htdocs/langs/hu_HU/other.lang index 4272e4a1d69..97c3c3e3470 100644 --- a/htdocs/langs/hu_HU/other.lang +++ b/htdocs/langs/hu_HU/other.lang @@ -145,14 +145,14 @@ LinkedObject=Csatolt objektum Miscellanous=Vegyes NbOfActiveNotifications=Bejelentések száma PredefinedMailTest=Ez egy teszt mailt. \ NA két vonal választja el egymástól kocsivissza. -PredefinedMailContentSendInvoice=Meg fogja találni itt a számla __FACREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Szeretnénk figyelmeztetni, hogy a számla __FACREF__ úgy tűnik, hogy nem fizetni. Szóval ez a számla mellékleteként ismét emlékeztetőül. \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Meg fogja találni itt a kereskedelmi propoal __PROPREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Meg fogja találni itt a sorrendben __ORDERREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Meg fogja találni itt a rendezés __ORDERREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Meg fogja találni itt a számla __FACREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Meg fogja találni itt a hajózási __SHIPPINGREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Meg fogja találni itt a beavatkozás __FICHINTERREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Meg fogja találni itt a számla __FACREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Szeretnénk figyelmeztetni, hogy a számla __FACREF__ úgy tűnik, hogy nem fizetni. Szóval ez a számla mellékleteként ismét emlékeztetőül. \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Meg fogja találni itt a kereskedelmi propoal __PROPREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Meg fogja találni itt a sorrendben __ORDERREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Meg fogja találni itt a rendezés __ORDERREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Meg fogja találni itt a számla __FACREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Meg fogja találni itt a hajózási __SHIPPINGREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Meg fogja találni itt a beavatkozás __FICHINTERREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ ChooseYourDemoProfil=Válassza ki a demo, amely egyezik a profilt tevékenység ... DemoFundation=Tagok kezelése egy alapítvány DemoFundation2=Tagok kezelése és bankszámla egy alapítvány diff --git a/htdocs/langs/is_IS/other.lang b/htdocs/langs/is_IS/other.lang index 55488adcff9..f0343871b02 100644 --- a/htdocs/langs/is_IS/other.lang +++ b/htdocs/langs/is_IS/other.lang @@ -166,7 +166,7 @@ CalculatedVolume=Reiknað magn // START - Lines generated via autotranslator.php tool (2010-09-04 01:33:40). // Reference language: en_US -> is_IS -PredefinedMailContentSendSupplierOrder=Þú vilja finna hér til __ORDERREF__ okkar \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Þú vilja finna hér til __ORDERREF__ okkar \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ WeightUnitpound=pund VolumeUnitounce=eyri VolumeUnitlitre=l @@ -194,7 +194,7 @@ Notify_FICHEINTER_VALIDATE=Afskipti fullgilt Notify_SHIPPING_VALIDATE=Shipping fullgilt Notify_SHIPPING_SENTBYMAIL=Shipping send með pósti Notify_MEMBER_VALIDATE=Member fullgilt -PredefinedMailContentSendFichInter=Þú vilja finna hér á afskiptum __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Þú vilja finna hér á afskiptum __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ Top=Top Bottom=Bottom Left=Vinstri @@ -217,12 +217,12 @@ Notify_BILL_SENTBYMAIL=Viðskiptavinur Reikningar send með pósti Notify_MEMBER_SUBSCRIPTION=Member áskrift Notify_MEMBER_RESILIATE=Member resiliated Notify_MEMBER_DELETE=Member eytt -PredefinedMailContentSendInvoice=Þú vilja finna hér á reikningsnúmerið __ FACREF__ \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Við viljum vara þig á að reikningur __ FACREF__ virðist ekki vera greiddur. Svo er þetta reikningur í viðhengi aftur, sem áminningu. \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Þú vilja finna hér auglýsing propoal __ PROPREF__ \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Þú vilja finna hér til __ ORDERREF__ \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Þú vilja finna hér á reikningsnúmerið __ FACREF__ \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Þú vilja finna hér siglinga __ SHIPPINGREF__ \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Þú vilja finna hér á reikningsnúmerið __ FACREF__ \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Við viljum vara þig á að reikningur __ FACREF__ virðist ekki vera greiddur. Svo er þetta reikningur í viðhengi aftur, sem áminningu. \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Þú vilja finna hér auglýsing propoal __ PROPREF__ \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Þú vilja finna hér til __ ORDERREF__ \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Þú vilja finna hér á reikningsnúmerið __ FACREF__ \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Þú vilja finna hér siglinga __ SHIPPINGREF__ \n\n__PERSONALIZED__ kveðju \n\n__SIGNATURE__ AddFiles=Bæta við skrár StartUpload=Byrja senda CancelUpload=Hætta við diff --git a/htdocs/langs/it_IT/other.lang b/htdocs/langs/it_IT/other.lang index 9e9cdee6426..33e575ca64f 100644 --- a/htdocs/langs/it_IT/other.lang +++ b/htdocs/langs/it_IT/other.lang @@ -138,14 +138,14 @@ NumberOfUnitsProposals =Numero di unità sulle proposte degli ultimi 12 NumberOfUnitsSupplierInvoices =Numero di unità sulle fatture fornitore degli ultimi 12 mesi OpenANewWindow =Apri una nuova finestra PaymentDoneInDolibarr =Pagamenti %s fatto su Dolibarr -PredefinedMailContentSendFichInter =Alleghiamo l'intervento __FICHINTERREF__ \n\n__PERSONALIZED__Cordiali saluti \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder =Vorremmo portare alla Vostra attenzione che la fattura __FACREF__ sembra non essere stata saldata. La fattura è allegata alla presente, come promemoria. \n\n__PERSONALIZED__ Cordiali saluti \n\n__SIGNATURE__ -PredefinedMailContentSendInvoice =Alleghiamo la fattura __FACREF__ \n\n__PERSONALIZED__ Cordiali Saluti \n\n__SIGNATURE__ -PredefinedMailContentSendOrder =Alleghiamo l'ordine __ORDERREF__ \n\n__PERSONALIZED__ Cordiali Saluti \n\n__SIGNATURE__ -PredefinedMailContentSendProposal =Alleghiamo la proposta commerciale __PROPREF__ \n\n__PERSONALIZED__ Cordiali Saluti \n\n__SIGNATURE__ -PredefinedMailContentSendShipping =Alleghiamo la spedizione __SHIPPINGREF__ \n\n__PERSONALIZED__Cordiali Saluti \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice =Alleghiamo la fattura __FACREF__ \n\n__PERSONALIZED__Cordiali Saluti \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder =Alleghiamo il nostro ordine n __ORDERREF__ \n\n__PERSONALIZED__Cordiali Saluti \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter =__CONTACTCIVNAME__ \n\n Alleghiamo l'intervento __FICHINTERREF__ \n\n__PERSONALIZED__Cordiali saluti \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder =__CONTACTCIVNAME__ \n\n Vorremmo portare alla Vostra attenzione che la fattura __FACREF__ sembra non essere stata saldata. La fattura è allegata alla presente, come promemoria. \n\n__PERSONALIZED__ Cordiali saluti \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice =__CONTACTCIVNAME__ \n\n Alleghiamo la fattura __FACREF__ \n\n__PERSONALIZED__ Cordiali Saluti \n\n__SIGNATURE__ +PredefinedMailContentSendOrder =__CONTACTCIVNAME__ \n\n Alleghiamo l'ordine __ORDERREF__ \n\n__PERSONALIZED__ Cordiali Saluti \n\n__SIGNATURE__ +PredefinedMailContentSendProposal =__CONTACTCIVNAME__ \n\n Alleghiamo la proposta commerciale __PROPREF__ \n\n__PERSONALIZED__ Cordiali Saluti \n\n__SIGNATURE__ +PredefinedMailContentSendShipping =__CONTACTCIVNAME__ \n\n Alleghiamo la spedizione __SHIPPINGREF__ \n\n__PERSONALIZED__Cordiali Saluti \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice =__CONTACTCIVNAME__ \n\n Alleghiamo la fattura __FACREF__ \n\n__PERSONALIZED__Cordiali Saluti \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder =__CONTACTCIVNAME__ \n\n Alleghiamo il nostro ordine n __ORDERREF__ \n\n__PERSONALIZED__Cordiali Saluti \n\n__SIGNATURE__ PredefinedMailTestHtml =Questa è una mail di test (la parola test deve risultare in grassetto).
Le due linee sono separate da un a capo. PredefinedMailTest =Questa è una mail di prova. \NLe due linee sono separate da un a capo. ProfIdShortDesc =Prof ID %s è un dato dipendente dal paese terzo.
Ad esempio, per il paese %s, è il codice %s. diff --git a/htdocs/langs/nb_NO/other.lang b/htdocs/langs/nb_NO/other.lang index aa9883fe23d..451d2c47fac 100644 --- a/htdocs/langs/nb_NO/other.lang +++ b/htdocs/langs/nb_NO/other.lang @@ -24,10 +24,10 @@ AttachANewFile=Legg ved ny fil/dokument LinkedObject=Lenkede objekter Miscellanous=Diverse NbOfActiveNotifications=Antall påminnelser -PredefinedMailContentSendInvoice=Vedlagt oversendes faktura __FACREF__\n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=I følge våre noteringer ser det ut til at vår faktura __FACREF__ fortsatt står ubetalt hos oss. Dersom Deres betaling har krysset denne påminnelsen ber vi Dem vennligst se bort fra denne henvendelsen. \n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Vedlagt oversendes tilbud __PROPREF__\n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Vedlagt oversendese __ORDERREF__\n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Vedlagt oversendes faktura __FACREF__\n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n I følge våre noteringer ser det ut til at vår faktura __FACREF__ fortsatt står ubetalt hos oss. Dersom Deres betaling har krysset denne påminnelsen ber vi Dem vennligst se bort fra denne henvendelsen. \n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Vedlagt oversendes tilbud __PROPREF__\n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Vedlagt oversendese __ORDERREF__\n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ DemoDesc=Dolibarr er ikke en komplett ERP, men er bygget opp av flere forskjellige moduler. Vi har derfor laget flere forskjellige demoprofiler ChooseYourDemoProfil=Velg demoprofilen som passer til ditt område... DemoFundation=Håndtere medlemmer i en organisasjon @@ -170,7 +170,7 @@ ExternalSites=Eksterne nettsteder // START - Lines generated via autotranslator.php tool (2010-09-04 01:33:40). // Reference language: en_US -> nb_NO -PredefinedMailContentSendSupplierOrder=Du finner her vårt bestillingsskjema __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Du finner her vårt bestillingsskjema __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ WeightUnitpound=pund VolumeUnitounce=unse VolumeUnitlitre=liter @@ -222,9 +222,9 @@ Notify_BILL_SENTBYMAIL=Kunden faktura sendt i posten Notify_ORDER_SUPPLIER_VALIDATE=Leverandør orden validert Notify_ORDER_SUPPLIER_SENTBYMAIL=Leverandør ordre sendes med post Notify_BILL_SUPPLIER_VALIDATE=Leverandør faktura validert -PredefinedMailContentSendSupplierInvoice=Du finner her fakturaen __FACREF__ \n\n__PERSONALIZED__ Vennlig hilsen \n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Du finner her shipping __SHIPPINGREF__ \n\n__PERSONALIZED__ Vennlig hilsen \n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Du finner her intervensjonen __FICHINTERREF__ \n\n__PERSONALIZED__ Vennlig hilsen \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Du finner her fakturaen __FACREF__ \n\n__PERSONALIZED__ Vennlig hilsen \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Du finner her shipping __SHIPPINGREF__ \n\n__PERSONALIZED__ Vennlig hilsen \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Du finner her intervensjonen __FICHINTERREF__ \n\n__PERSONALIZED__ Vennlig hilsen \n\n__SIGNATURE__ Top=Topp Bottom=Bottom FileIsTooBig=Filer er for stor diff --git a/htdocs/langs/nl_NL/other.lang b/htdocs/langs/nl_NL/other.lang index 361ac295a61..e2e7fba77f2 100644 --- a/htdocs/langs/nl_NL/other.lang +++ b/htdocs/langs/nl_NL/other.lang @@ -27,12 +27,12 @@ Miscellanous = Diversen NbOfActiveNotifications = Aantal kennisgevingen PredefinedMailTest = Dit is een test e-mail.\nDe twee lijnen worden gescheiden door een harde return. PredefinedMailTestHtml = Dit is een test e-mail (het woord test moet vetgedrukt worden weergegeven).
De twee lijnen worden gescheiden door een harde return. -PredefinedMailContentSendInvoice = Bijgevoegd vindt u de factuur __FACREF__ \n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder = Wij willen u erop wijzen dat de factuur __FACREF__ niet lijkt te zijn voldaan. Daarom sturen wij u nogmaals de factuur als bijlage. \n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ -PredefinedMailContentSendProposal = Hierbij sturen wij u de offerte __PROPREF__ \n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ -PredefinedMailContentSendOrder = Hierbij sturen wij u de opdracht __ORDERREF__ \n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder = Hierbij onze opdracht __ORDERREF__ \n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice = Hierbij sturen wij u de factuur __FACREF__\n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice = __CONTACTCIVNAME__ \n\n Bijgevoegd vindt u de factuur __FACREF__ \n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder = __CONTACTCIVNAME__ \n\n Wij willen u erop wijzen dat de factuur __FACREF__ niet lijkt te zijn voldaan. Daarom sturen wij u nogmaals de factuur als bijlage. \n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ +PredefinedMailContentSendProposal =__CONTACTCIVNAME__ \n\n Hierbij sturen wij u de offerte __PROPREF__ \n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ +PredefinedMailContentSendOrder = __CONTACTCIVNAME__ \n\n Hierbij sturen wij u de opdracht __ORDERREF__ \n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder = __CONTACTCIVNAME__ \n\n Hierbij onze opdracht __ORDERREF__ \n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice = __CONTACTCIVNAME__ \n\n Hierbij sturen wij u de factuur __FACREF__\n\n__PERSONALIZED__Met vriendelijke groeten,\n\n__SIGNATURE__ DemoDesc = Dolibarr is een compacte ERP / CRM oplossing opgebouwd met verschillende functionele modules. Een demo met alle modules beschikbaar betekent niets als nooit iets gebeurt. Dus, zijn enkele demo-profielen beschikbaar. ChooseYourDemoProfil = Kies het demoprofiel dat overeenkomt met uw activiteiten... DemoFundation = Ledenbeheer van een stichting @@ -206,8 +206,8 @@ Notify_MEMBER_VALIDATE=Lid gevalideerd Notify_MEMBER_SUBSCRIPTION=Lid ingeschreven Notify_MEMBER_RESILIATE=Lid resiliated Notify_MEMBER_DELETE=Lid verwijderd -PredefinedMailContentSendShipping=Hier vindt u de verzendkosten __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Hier vindt u de tussenkomst __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\nHier vindt u de verzendkosten __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\nHier vindt u de tussenkomst __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ SelectAColor=Kies een kleur AddFiles=Bestanden toevoegen StartUpload=Start uploaden diff --git a/htdocs/langs/pl_PL/other.lang b/htdocs/langs/pl_PL/other.lang index 8c1c462be49..9caefe6bc0f 100644 --- a/htdocs/langs/pl_PL/other.lang +++ b/htdocs/langs/pl_PL/other.lang @@ -251,7 +251,7 @@ ExternalSites=tereny zewnętrzne // START - Lines generated via autotranslator.php tool (2010-09-04 01:33:40). // Reference language: en_US -> pl_PL -PredefinedMailContentSendSupplierOrder=Znajdziecie tu nasze zamówienie __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Znajdziecie tu nasze zamówienie __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ WeightUnitpound=funt VolumeUnitounce=uncja VolumeUnitlitre=litr @@ -279,9 +279,9 @@ Notify_MEMBER_VALIDATE=Członek zatwierdzone Notify_MEMBER_SUBSCRIPTION=Członek subskrybowanych Notify_MEMBER_RESILIATE=Członek resiliated Notify_MEMBER_DELETE=Członek usunięte -PredefinedMailContentSendSupplierInvoice=Znajdziecie tu Państwo fakturę __FACREF__ \n\nSincerely \n\n -PredefinedMailContentSendShipping=Znajdziesz tu wysyłki __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely \n\n -PredefinedMailContentSendFichInter=Znajdziesz tu interwencji __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Znajdziecie tu Państwo fakturę __FACREF__ \n\nSincerely \n\n +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Znajdziesz tu wysyłki __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely \n\n +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Znajdziesz tu interwencji __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n Top=Top Bottom=Dno FileFormat=Format pliku @@ -305,10 +305,10 @@ Notify_BILL_SUPPLIER_SENTBYMAIL=Faktura dostawca wysłane pocztą Notify_CONTRACT_VALIDATE=Umowa zatwierdzona Notify_FICHEINTER_VALIDATE=Interwencja zatwierdzone Notify_SHIPPING_VALIDATE=Wysyłka zatwierdzone -PredefinedMailContentSendInvoice=Znajdziecie tu Państwo faktury __FACREF__ \n\n__PERSONALIZED__ poważaniem \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Pragniemy ostrzec, że faktura __FACREF__ wydaje się nie być wypłacana. Więc to jest faktura w załączniku ponownie, jako przypomnienie. \n\n__PERSONALIZED__ poważaniem \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Znajdziecie tu komercyjnego propoal __PROPREF__ \n\n__PERSONALIZED__ poważaniem \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Znajdziecie tutaj aby __ORDERREF__ \n\n__PERSONALIZED__ poważaniem \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Znajdziecie tu Państwo faktury __FACREF__ \n\n__PERSONALIZED__ poważaniem \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Pragniemy ostrzec, że faktura __FACREF__ wydaje się nie być wypłacana. Więc to jest faktura w załączniku ponownie, jako przypomnienie. \n\n__PERSONALIZED__ poważaniem \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Znajdziecie tu komercyjnego propoal __PROPREF__ \n\n__PERSONALIZED__ poważaniem \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Znajdziecie tutaj aby __ORDERREF__ \n\n__PERSONALIZED__ poważaniem \n\n__SIGNATURE__ Left=W lewo Right=Prawo ThisIsListOfModules=To jest lista modułów selekcjonowane przez tego profilu demo (tylko najczęściej moduły są widoczne w tym demo). Zmodyfikować, aby mieć bardziej spersonalizowany demo i kliknij "Start". diff --git a/htdocs/langs/pt_BR/other.lang b/htdocs/langs/pt_BR/other.lang index 43c27cbfbf6..688fd19e32a 100755 --- a/htdocs/langs/pt_BR/other.lang +++ b/htdocs/langs/pt_BR/other.lang @@ -19,10 +19,10 @@ AttachANewFile=Adicionar Novo Arquivo/Documento LinkedObject=Arquivo Anexo Miscellanous=Diversos NbOfActiveNotifications=Número Notificações -PredefinedMailContentSendInvoice=Estimados senhores,\n\nem anexo enviamos a nossa fatura __FACREF__ .\n\nAtenciosamente\n\n -PredefinedMailContentSendInvoiceReminder=Estimados senhores,\n\ninformamos que a fatura __FACREF__ nos consta como não paga. Por favor revisar a fatura anexada e nos dar uma posicao.\n\nAtenciosamente\n\n -PredefinedMailContentSendProposal=Estimados senhores,\n\nem anexo enviamos a proposta solicitada __PROPREF__ .\n\nAtenciosamente\n\n -PredefinedMailContentSendOrder=Estimados senhores,\n\nem anexo segue o pedido solicitado __ORDERREF__ .\n\nAtenciosamente\n\n +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Estimados senhores,\n\nem anexo enviamos a nossa fatura __FACREF__ .\n\nAtenciosamente\n\n +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Estimados senhores,\n\ninformamos que a fatura __FACREF__ nos consta como não paga. Por favor revisar a fatura anexada e nos dar uma posicao.\n\nAtenciosamente\n\n +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Estimados senhores,\n\nem anexo enviamos a proposta solicitada __PROPREF__ .\n\nAtenciosamente\n\n +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Estimados senhores,\n\nem anexo segue o pedido solicitado __ORDERREF__ .\n\nAtenciosamente\n\n DemoDesc=Dolibarr não é um ERP monolítico, mas está composto de módulos funcionais simples e opcionais. Uma demonstração que inclua todos estes módulos não tem sentido, já que nunca mais todos os módulos são utilizados. De todas maneras existe disponíveis muitos perfis de demonstração ChooseYourDemoProfil=quer ver o perfil de demonstração que melhor corresponda e a sua Atividade... DemoFundation=Administração de Membros de uma associação diff --git a/htdocs/langs/pt_PT/other.lang b/htdocs/langs/pt_PT/other.lang index 6123038bc5a..8fb2274b40d 100644 --- a/htdocs/langs/pt_PT/other.lang +++ b/htdocs/langs/pt_PT/other.lang @@ -16,10 +16,10 @@ AttachANewFile=Adicionar Novo Ficheiro/documento LinkedObject=Objecto adjudicado Miscellanous=Diversos NbOfActiveNotifications=Número Notificações -PredefinedMailContentSendInvoice=Juntamos a factura __FACREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Damos conhecimento que a factura __FACREF__ parece não estar paga. Segue em anexo, para que possa rever.\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Juntamos o orçamento __PROPREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Juntamos o pedido __ORDERREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Juntamos a factura __FACREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Damos conhecimento que a factura __FACREF__ parece não estar paga. Segue em anexo, para que possa rever.\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Juntamos o orçamento __PROPREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Juntamos o pedido __ORDERREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ DemoDesc=Dolibarr não é um ERP monolítico, mas está composto de módulos funcionais simples e opcionais. uma demonstração que inclua todos estes módulos não tem sentido, já que nunca mais todos Os módulos são utilizados. De todas maneiras existem disponiveis muitos perfis de demonstração ChooseYourDemoProfil=Quer ver o perfil de demonstração que melhor corresponda e a sua Actividade... DemoFundation=Gestão de Membros de uma associação @@ -151,7 +151,7 @@ DolibarrNotification=Notificação automática // START - Lines generated via autotranslator.php tool (2010-09-04 01:33:40). // Reference language: en_US -> pt_PT -PredefinedMailContentSendSupplierOrder=Você vai encontrar aqui o nosso fim __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\nVocê vai encontrar aqui o nosso fim __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ WeightUnitpound=libra VolumeUnitounce=onça VolumeUnitlitre=litro @@ -177,8 +177,8 @@ Notify_BILL_SUPPLIER_SENTBYMAIL=Fatura do fornecedor enviada por correio Notify_CONTRACT_VALIDATE=Contrato validado Notify_FICHEINTER_VALIDATE=Intervenção validado Notify_SHIPPING_VALIDATE=Transporte validado -PredefinedMailContentSendShipping=Você vai encontrar aqui o transporte __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Você vai encontrar aqui a intervenção __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\nVocê vai encontrar aqui o transporte __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\nVocê vai encontrar aqui a intervenção __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ Top=Topo Bottom=Fundo Left=À esquerda @@ -204,7 +204,7 @@ Notify_MEMBER_VALIDATE=Membro validado Notify_MEMBER_SUBSCRIPTION=Membro subscrito Notify_MEMBER_RESILIATE=Membro anulado Notify_MEMBER_DELETE=Membro excluído -PredefinedMailContentSendSupplierInvoice=Você vai encontrar aqui a factura __FACREF__ \n\n__PERSONALIZED__ Sinceramente \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\nVocê vai encontrar aqui a factura __FACREF__ \n\n__PERSONALIZED__ Sinceramente \n\n__SIGNATURE__ SelectAColor=Escolha uma cor AddFiles=Adicionar arquivos StartUpload=Iniciar upload diff --git a/htdocs/langs/ro_RO/other.lang b/htdocs/langs/ro_RO/other.lang index a98adb2718a..3b46ab31625 100644 --- a/htdocs/langs/ro_RO/other.lang +++ b/htdocs/langs/ro_RO/other.lang @@ -309,7 +309,7 @@ ExternalSites=Sites externos // START - Lines generated via autotranslator.php tool (2010-09-04 01:33:40). // Reference language: en_US -> ro_RO -PredefinedMailContentSendSupplierOrder=Veţi găsi aici noastre pentru __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Veţi găsi aici noastre pentru __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ WeightUnitpound=livră VolumeUnitounce=uncie VolumeUnitlitre=litru @@ -340,7 +340,7 @@ Notify_MEMBER_VALIDATE=Membru validate Notify_MEMBER_SUBSCRIPTION=Membru subscris Notify_MEMBER_RESILIATE=Membru reziliat Notify_MEMBER_DELETE=Membre elimină -PredefinedMailContentSendSupplierInvoice=Veţi găsi aici factura __FACREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Veţi găsi aici factura __FACREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ ThisIsListOfModules=Aceasta este o listă de module preselectate de acest profil de demo-ul (numai modulele cele mai comune sunt vizibile în această demonstraţie). Editeaza aceasta să aibă un demo mai personalizate şi apăsaţi pe "Start". ClickHere=Click aici UseAdvancedPerms=Utilizaţi permisiunile avansate ale unor module @@ -362,12 +362,12 @@ Notify_ORDER_SUPPLIER_VALIDATE=Pentru furnizorul validate Notify_ORDER_SUPPLIER_SENTBYMAIL=Pentru furnizorul trimis prin e-mail Notify_BILL_SUPPLIER_VALIDATE=Factura furnizorului validate Notify_BILL_SUPPLIER_PAYED=Factura platita cu furnizorul -PredefinedMailContentSendInvoice=Veţi găsi aici factura __FACREF__ \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Ne-ar dori să vă avertizeze că __FACREF__ factura pare a nu fi platit. Deci, aceasta este factură în ataşamentul din nou, ca un memento. \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Veţi găsi aici comercial propoal __PROPREF__ \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Veţi găsi aici, pentru __ORDERREF__ \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Veţi găsi aici de transport maritim __SHIPPINGREF__ \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Veţi găsi aici de intervenţie __FICHINTERREF__ \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Veţi găsi aici factura __FACREF__ \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Ne-ar dori să vă avertizeze că __FACREF__ factura pare a nu fi platit. Deci, aceasta este factură în ataşamentul din nou, ca un memento. \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Veţi găsi aici comercial propoal __PROPREF__ \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Veţi găsi aici, pentru __ORDERREF__ \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Veţi găsi aici de transport maritim __SHIPPINGREF__ \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Veţi găsi aici de intervenţie __FICHINTERREF__ \n\n__PERSONALIZED__ respect \n\n__SIGNATURE__ Top=Top Bottom=De jos Left=Stânga diff --git a/htdocs/langs/ru_RU/other.lang b/htdocs/langs/ru_RU/other.lang index a27146c596f..b68df84422a 100644 --- a/htdocs/langs/ru_RU/other.lang +++ b/htdocs/langs/ru_RU/other.lang @@ -304,7 +304,7 @@ ExternalSites=На внешних сайтах // START - Lines generated via autotranslator.php tool (2010-09-04 01:33:40). // Reference language: en_US -> ru_RU -PredefinedMailContentSendSupplierOrder=Вы найдете здесь наш заказ __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Вы найдете здесь наш заказ __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ WeightUnitpound=фунт VolumeUnitounce=унция VolumeUnitlitre=литр @@ -321,9 +321,9 @@ ToolsDesc=Эта область посвящена группе разные и Notify_WITHDRAW_TRANSMIT=Передача вывода Notify_WITHDRAW_CREDIT=Кредитный выход Notify_WITHDRAW_EMIT=Isue вывода -PredefinedMailContentSendSupplierInvoice=Только здесь вы найдете счета __FACREF__ \n\n__PERSONALIZED__Sincerely \n\n -PredefinedMailContentSendShipping=Здесь вы найдете доставку __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely \n\n -PredefinedMailContentSendFichInter=Вы найдете здесь вмешательство __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Только здесь вы найдете счета __FACREF__ \n\n__PERSONALIZED__Sincerely \n\n +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Здесь вы найдете доставку __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely \n\n +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Вы найдете здесь вмешательство __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n Top=Топ Bottom=Дно Left=Левый @@ -368,9 +368,9 @@ Notify_MEMBER_VALIDATE=Член проверки Notify_MEMBER_SUBSCRIPTION=Член подписки Notify_MEMBER_RESILIATE=Член resiliated Notify_MEMBER_DELETE=Член удален -PredefinedMailContentSendInvoice=Здесь вы найдете счет __FACREF__ \n\n__PERSONALIZED__ уважением \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Мы бы хотели предупредить Вас, что счет-фактура __FACREF__, кажется, не оплачиваются. Так что это счета-фактуры в приложении опять же, как напоминание. \n\n__PERSONALIZED__ уважением \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Здесь вы найдете коммерческие propoal __PROPREF__ \n\n__PERSONALIZED__ уважением \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Вы найдете здесь порядок __ORDERREF__ \n\n__PERSONALIZED__ уважением \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Здесь вы найдете счет __FACREF__ \n\n__PERSONALIZED__ уважением \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Мы бы хотели предупредить Вас, что счет-фактура __FACREF__, кажется, не оплачиваются. Так что это счета-фактуры в приложении опять же, как напоминание. \n\n__PERSONALIZED__ уважением \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Здесь вы найдете коммерческие propoal __PROPREF__ \n\n__PERSONALIZED__ уважением \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Вы найдете здесь порядок __ORDERREF__ \n\n__PERSONALIZED__ уважением \n\n__SIGNATURE__ ShipmentValidatedInDolibarr=Отгрузка %s подтверждены в Dolibarr // STOP - Lines generated via autotranslator.php tool (2012-02-29 17:28:06). diff --git a/htdocs/langs/ru_UA/other.lang b/htdocs/langs/ru_UA/other.lang index a526dbce1c5..d67455ca004 100644 --- a/htdocs/langs/ru_UA/other.lang +++ b/htdocs/langs/ru_UA/other.lang @@ -40,14 +40,14 @@ TotalSizeOfAttachedFiles=Общий размер присоединенных ф MaxSize=Максимальный размер PredefinedMailTest=Это тест почте. \ NВ две строки, разделенные возвратом каретки. PredefinedMailTestHtml=Это тест почте (слово тест должен быть жирным шрифтом).
Две строки, разделенные возвратом каретки. -PredefinedMailContentSendInvoice=Только здесь вы найдете счета __FACREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Мы бы хотели предупредить Вас, что счет-фактура __FACREF__, кажется, не оплачиваются. Так что это счета-фактуры в привязанности снова, как напоминание. \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Только здесь вы найдете коммерческие propoal __PROPREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Вы найдете здесь порядок __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Здесь Вы найдете наш заказ __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Только здесь вы найдете счета __FACREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Здесь вы найдете доставку __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Вы найдете здесь вмешательство __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Только здесь вы найдете счета __FACREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Мы бы хотели предупредить Вас, что счет-фактура __FACREF__, кажется, не оплачиваются. Так что это счета-фактуры в привязанности снова, как напоминание. \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Только здесь вы найдете коммерческие propoal __PROPREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Вы найдете здесь порядок __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Здесь Вы найдете наш заказ __ORDERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Только здесь вы найдете счета __FACREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Здесь вы найдете доставку __SHIPPINGREF__ \n\n__PERSONALIZED__Sincerely\n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Вы найдете здесь вмешательство __FICHINTERREF__ \n\n__PERSONALIZED__Sincerely \n\n__SIGNATURE__ DemoCompanyProductAndStocks=Управление малого и среднего продуктов компании, продающей DemoCompanyAll=Управление малых и средних компаний с несколькими деятельности (все основные модули) GoToDemo=Перейти в демо- diff --git a/htdocs/langs/sl_SI/other.lang b/htdocs/langs/sl_SI/other.lang index 664ef8ea4a1..a9af5499b8d 100644 --- a/htdocs/langs/sl_SI/other.lang +++ b/htdocs/langs/sl_SI/other.lang @@ -65,14 +65,14 @@ WarningInstallDirExists = Pozor, instalacijska mapa (htdocs/install) še WarningUntilDirRemoved = Vsa varnostna opozorila (ki jih vidi samo uporabnik admin) bodo ostala aktivna, dokler je prisotna ranljivost(oz. je konstanta MAIN_REMOVE_INSTALL_WARNING dodana v Nastavitev->Ostale nastavitve). PredefinedMailTest = To je testni mail.\nDve vrstici sta ločeni z carriage return. PredefinedMailTestHtml = To je test mail (beseda test mora biti v krepkem tisku).
Dve vrstici sta ločeni z carriage return. -PredefinedMailContentSendInvoice = V prilogi je račun __FACREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder = Želimo vas opozoriti, da račun __FACREF__ ni bil poravnan. Zato vam račun še enkrat pošiljamo v prilogi.\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ -PredefinedMailContentSendProposal = V prilogi je ponudba __PROPREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ -PredefinedMailContentSendOrder = V prilogi je potrditev naročila __ORDERREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder = V prilogi je naročilo __ORDERREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice = V prilogi je potrjen račun __FACREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ -PredefinedMailContentSendShipping = V prilogi je pošiljka __SHIPPINGREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ -PredefinedMailContentSendFichInter = V prilogi je intervencija __FICHINTERREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice =__CONTACTCIVNAME__ \n\n V prilogi je račun __FACREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder = __CONTACTCIVNAME__ \n\n Želimo vas opozoriti, da račun __FACREF__ ni bil poravnan. Zato vam račun še enkrat pošiljamo v prilogi.\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ +PredefinedMailContentSendProposal = __CONTACTCIVNAME__ \n\n V prilogi je ponudba __PROPREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ +PredefinedMailContentSendOrder =__CONTACTCIVNAME__ \n\n V prilogi je potrditev naročila __ORDERREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder = __CONTACTCIVNAME__ \n\n V prilogi je naročilo __ORDERREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice = __CONTACTCIVNAME__ \n\n V prilogi je potrjen račun __FACREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ +PredefinedMailContentSendShipping = __CONTACTCIVNAME__ \n\n V prilogi je pošiljka __SHIPPINGREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ +PredefinedMailContentSendFichInter = __CONTACTCIVNAME__ \n\n V prilogi je intervencija __FICHINTERREF__\n\n__PERSONALIZED__S spoštovanjem\n\n__SIGNATURE__ DemoDesc = Dolibarr je kompakten ERP/CRM sestavljen iz več funkcionalnih modulov. Demo z vsemi moduli nima pomena, ker se kot tak nikoli ne pojavi. Zato je na voljo več demo profilov. ChooseYourDemoProfil = Izberite demo profil, ki ustreza vaši aktivnosti... DemoFundation = Urejanje članov ustanove diff --git a/htdocs/langs/sv_SE/other.lang b/htdocs/langs/sv_SE/other.lang index ce3ec551a3f..191f95768a5 100644 --- a/htdocs/langs/sv_SE/other.lang +++ b/htdocs/langs/sv_SE/other.lang @@ -201,14 +201,14 @@ Notify_BILL_SENTBYMAIL=Kundfaktura skickas per post Notify_MEMBER_SUBSCRIPTION=Medlem tecknat Notify_MEMBER_RESILIATE=Medlem resiliated Notify_MEMBER_DELETE=Elementet bort -PredefinedMailContentSendInvoice=Här hittar du fakturan __FACREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Vi vill varna dig för att fakturan __FACREF__ verkar inte betalt. Så detta är fakturan i bilagan igen, som en påminnelse. \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Här hittar du den kommersiella propoal __PROPREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Här hittar du den ordning __ORDERREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Här hittar du vårt beställningsformulär __ORDERREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Här hittar du fakturan __FACREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Här hittar du sjöfarten __SHIPPINGREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Här hittar du insatsen __FICHINTERREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Här hittar du fakturan __FACREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Vi vill varna dig för att fakturan __FACREF__ verkar inte betalt. Så detta är fakturan i bilagan igen, som en påminnelse. \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Här hittar du den kommersiella propoal __PROPREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Här hittar du den ordning __ORDERREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Här hittar du vårt beställningsformulär __ORDERREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Här hittar du fakturan __FACREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Här hittar du sjöfarten __SHIPPINGREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Här hittar du insatsen __FICHINTERREF__ \n\n__PERSONALIZED__ Sincerely \n\n__SIGNATURE__ StartUpload=Starta upp CancelUpload=Avbryt upp FileIsTooBig=Filer är för stor diff --git a/htdocs/langs/tr_TR/other.lang b/htdocs/langs/tr_TR/other.lang index 881fb05ec28..9f0ffa6f878 100755 --- a/htdocs/langs/tr_TR/other.lang +++ b/htdocs/langs/tr_TR/other.lang @@ -56,14 +56,14 @@ Miscellanous=Çeşitli NbOfActiveNotifications=Number of notifications PredefinedMailTest=Bu bir deneme postasıdır.\nİki satır enter tuşu ile ayrılmıştır. PredefinedMailTestHtml=Bu bir deneme postası (deneme sözcüğü koyu olmalı).
İki satır enter tuşu ile ayrılmıştır. -PredefinedMailContentSendInvoice=Burada faturayı bulacaksınız __FACREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ -PredefinedMailContentSendInvoiceReminder=Fatura __FACREF__ nın ödenmemiş göründüğünün size uyarısını yapmak isteriz. Dolayısı ile fatura yeniden anımsatmak üzere eklenmiştir.\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ -PredefinedMailContentSendProposal=Burada ticari teklifi bulacaksınız __PROPREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ -PredefinedMailContentSendOrder=Burada siparişi bulacaksınız __ORDERREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierOrder=Burada siparişimizi bulacaksınız __ORDERREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ -PredefinedMailContentSendSupplierInvoice=Burada faturayı bulacaksınız __FACREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ -PredefinedMailContentSendShipping=Burada sevkiyatı bulacaksınız __SHIPPINGREF__\n\n__PERSONALIZED__ Saygılarımızla\n\n__SIGNATURE__ -PredefinedMailContentSendFichInter=Burada müdahaleyi bulacaksınız __FICHINTERREF__\n\n__PERSONALIZED__ Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Burada faturayı bulacaksınız __FACREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Fatura __FACREF__ nın ödenmemiş göründüğünün size uyarısını yapmak isteriz. Dolayısı ile fatura yeniden anımsatmak üzere eklenmiştir.\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendProposal=__CONTACTCIVNAME__ \n\n Burada ticari teklifi bulacaksınız __PROPREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendOrder=__CONTACTCIVNAME__ \n\n Burada siparişi bulacaksınız __ORDERREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierOrder=__CONTACTCIVNAME__ \n\n Burada siparişimizi bulacaksınız __ORDERREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendSupplierInvoice=__CONTACTCIVNAME__ \n\n Burada faturayı bulacaksınız __FACREF__\n\n__PERSONALIZED__Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendShipping=__CONTACTCIVNAME__ \n\n Burada sevkiyatı bulacaksınız __SHIPPINGREF__\n\n__PERSONALIZED__ Saygılarımızla\n\n__SIGNATURE__ +PredefinedMailContentSendFichInter=__CONTACTCIVNAME__ \n\n Burada müdahaleyi bulacaksınız __FICHINTERREF__\n\n__PERSONALIZED__ Saygılarımızla\n\n__SIGNATURE__ DemoDesc=Dolibarr birçok fonksiyonel modülden oluşan derlitoplu bir ERP/CRM programıdır. Bu durumda tüm modülleri içeren bir demo asla hiçbir şey demek değildir. Yani, birçok demo profili vardır. ChooseYourDemoProfil=İşlemlerinize uyan demo profilini seçin... DemoFundation= Bir vakıfın üyelerini yönet From fbf8d410d21987c3fd0dd27060e21f1887e90229 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 23 Mar 2013 17:34:23 +0100 Subject: [PATCH 10/35] New: Support revenue stamp onto invoices --- ChangeLog | 1 + htdocs/admin/company.php | 8 +-- htdocs/compta/facture.php | 46 ++++++------- .../modules/facture/doc/pdf_crabe.modules.php | 11 +++ .../install/mysql/data/llx_c_revenuestamp.sql | 13 +--- htdocs/install/mysql/data/llx_c_tva.sql | 14 ++-- .../install/mysql/migration/3.3.0-3.4.0.sql | 15 ++++- htdocs/install/mysql/tables/llx_c_tva.sql | 4 +- htdocs/societe/class/societe.class.php | 67 ++++++++++++------- 9 files changed, 103 insertions(+), 76 deletions(-) diff --git a/ChangeLog b/ChangeLog index 66e4a8cfd89..db9fc3b9f8e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -4,6 +4,7 @@ English Dolibarr ChangeLog ***** ChangeLog for 3.4 compared to 3.3 ***** For users: +- New: Support revenue stamp onto invoices. - New: Add a tab "consumption" on thirdparties to list products bought/sells. - New: Some performance enhancements. - New: Can attach files onto trip and expenses modules. diff --git a/htdocs/admin/company.php b/htdocs/admin/company.php index 55ad5902e13..55a8a8b8b60 100644 --- a/htdocs/admin/company.php +++ b/htdocs/admin/company.php @@ -547,7 +547,7 @@ if ($action == 'edit' || $action == 'updateedit') /* * Local Taxes */ - if ($mysoc->hasLocalTax(1)) + if ($mysoc->useLocalTax(1)) { // Local Tax 1 print '
'; @@ -579,7 +579,7 @@ if ($action == 'edit' || $action == 'updateedit') print "\n"; print "
'.price($object->total_localtax2,1,'',1,-1,-1,$conf->currency).'
'; + print ''; + if ($action != 'editrevenuestamp' && ! empty($object->brouillon) && $user->rights->facture->creer) print ''; + print '
'; + print $langs->trans('RevenueStamp'); + print 'id.'">'.img_edit($langs->trans('SetRevenuStamp'),1).'
'; + print '
'; + if ($action == 'editrevenuestamp') + { + print '
'; + print ''; + print ''; + print ''; + print ' '; + print '
'; + } + else + { + print price($object->revenuestamp,1,'',1,-1,-1,$conf->currency); + } + print '
'.$langs->trans('AmountTTC').''.price($object->total_ttc,1,'',1,-1,-1,$conf->currency).'
"; } - if ($mysoc->hasLocalTax(2)) + if ($mysoc->useLocalTax(2)) { // Local Tax 2 print '
'; @@ -927,7 +927,7 @@ else /* * Local Taxes */ - if ($mysoc->hasLocalTax(1)) + if ($mysoc->useLocalTax(1)) { // Local Tax 1 print '
'; @@ -960,7 +960,7 @@ else print ""; } - if ($mysoc->hasLocalTax(2)) + if ($mysoc->useLocalTax(2)) { // Local Tax 2 print '
'; diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index aa6f3cfec07..f792d7c6e20 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -377,22 +377,22 @@ else if ($action == 'confirm_valid' && $confirm == 'yes' && $user->rights->factu $object->fetch_thirdparty(); // Check parameters - + // Check for mandatory prof id for ($i = 1; $i < 5; $i++) { - + $idprof_mandatory ='SOCIETE_IDPROF'.($i).'_INVOICE_MANDATORY'; $idprof='idprof'.$i; if (! $object->thirdparty->$idprof && ! empty($conf->global->$idprof_mandatory)) { if (! $error) $langs->load("errors"); $error++; - + setEventMessage($langs->trans('ErrorProdIdIsMandatory',$langs->transcountry('ProfId'.$i, $object->thirdparty->country_code)),'errors'); } - } - + } + //Check for warehouse if ($object->type != 3 && ! empty($conf->global->STOCK_CALCULATE_ON_BILL) && $object->hasProductsOrServices(1)) { @@ -403,7 +403,7 @@ else if ($action == 'confirm_valid' && $confirm == 'yes' && $user->rights->factu $action=''; } } - + if (! $error) { $result = $object->validate($user,'',$idwarehouse); @@ -625,7 +625,7 @@ else if ($action == 'add' && $user->rights->facture->creer) $db->begin(); $error=0; - + // Get extra fields foreach($_POST as $key => $value) { @@ -1638,7 +1638,7 @@ else if ($action == 'builddoc') // En get ou en post if (GETPOST('model')) $object->setDocModel($user, GETPOST('model')); if (GETPOST('fk_bank')) $object->fk_bank=GETPOST('fk_bank'); - + // Define output language $outputlangs = $langs; $newlang=''; @@ -2280,10 +2280,10 @@ else if ($id > 0 || ! empty($ref)) */ $result=$object->fetch($id,$ref); - + // fetch optionals attributes and labels $extralabels=$extrafields->fetch_name_optionals_label('facture'); - + if ($result > 0) { if ($user->societe_id>0 && $user->societe_id!=$object->socid) accessforbidden('',0); @@ -2292,11 +2292,12 @@ else if ($id > 0 || ! empty($ref)) $soc = new Societe($db); $soc->fetch($object->socid); + $selleruserevenustamp=$mysoc->useRevenueStamp(); $totalpaye = $object->getSommePaiement(); $totalcreditnotes = $object->getSumCreditNotesUsed(); $totaldeposits = $object->getSumDepositsUsed(); - //print "totalpaye=".$totalpaye." totalcreditnotes=".$totalcreditnotes." totaldeposts=".$totaldeposits; + //print "totalpaye=".$totalpaye." totalcreditnotes=".$totalcreditnotes." totaldeposts=".$totaldeposits." selleruserrevenuestamp=".$selleruserevenustamp; // We can also use bcadd to avoid pb with floating points // For example print 239.2 - 229.3 - 9.9; does not return 0. @@ -2753,7 +2754,6 @@ else if ($id > 0 || ! empty($ref)) /* * List of payments */ - $selleruserevenustamp=empty($conf->global->MAIN_USE_REVENUE_STAMP)?0:1; // TODO Add method societe->useRevenueStamp() to look into table llx_c_revenue_stamp if there is one line for country $sign=1; if ($object->type == 2) $sign=-1; @@ -2764,7 +2764,7 @@ else if ($id > 0 || ! empty($ref)) if($mysoc->localtax1_assuj=="1") $nbrows++; if($mysoc->localtax2_assuj=="1") $nbrows++; if ($selleruserevenustamp) $nbrows++; - + print ''; print ''; @@ -3039,12 +3039,12 @@ else if ($id > 0 || ! empty($ref)) print ''; // Amount Local Taxes - if ($mysoc->localtax1_assuj=="1") //Localtax1 RE + if ($mysoc->localtax1_assuj=="1" && $mysoc->useLocalTax(1)) //Localtax1 (example RE) { print ''; print ''; } - if ($mysoc->localtax2_assuj=="1") //Localtax2 IRPF + if ($mysoc->localtax2_assuj=="1" && $mysoc->useLocalTax(2)) //Localtax2 (example IRPF) { print ''; print ''; @@ -3075,7 +3075,7 @@ else if ($id > 0 || ! empty($ref)) } print ''; } - + // Total with tax print ''; @@ -3113,14 +3113,14 @@ else if ($id > 0 || ! empty($ref)) print ''; print ''; } - + // Other attributes $res=$object->fetch_optionals($object->id,$extralabels); $parameters=array('colspan' => ' colspan="2"'); $reshook=$hookmanager->executeHooks('formObjectOptions',$parameters,$object,$action); // Note that $action and $object may have been modified by hook if (empty($reshook) && ! empty($extrafields->attribute_label)) { - + if ($action == 'edit_extras') { print ''; @@ -3128,8 +3128,8 @@ else if ($id > 0 || ! empty($ref)) print ''; print ''; } - - + + foreach($extrafields->attribute_label as $key=>$label) { $value=(isset($_POST["options_".$key])?$_POST["options_".$key]:$object->array_options["options_".$key]); @@ -3153,16 +3153,16 @@ else if ($id > 0 || ! empty($ref)) print ''."\n"; } } - + if(count($extrafields->attribute_label) > 0) { - + if ($action == 'edit_extras' && $user->rights->facture->creer) { print ''; - + } else { if ($object->statut == 0 && $user->rights->facture->creer) diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php index ef7698d0564..15ee4e29aba 100755 --- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php @@ -1020,6 +1020,17 @@ class pdf_crabe extends ModelePDFFactures //} } + // Revenue stamp + if (price2num($object->revenuestamp) != 0) + { + $index++; + $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("RevenueStamp"), $useborder, 'L', 1); + + $pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index); + $pdf->MultiCell($largcol2, $tab2_hl, price($sign * $object->revenuestamp), $useborder, 'R', 1); + } + // Total TTC $index++; $pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index); diff --git a/htdocs/install/mysql/data/llx_c_revenuestamp.sql b/htdocs/install/mysql/data/llx_c_revenuestamp.sql index 8d998111218..040a8370485 100644 --- a/htdocs/install/mysql/data/llx_c_revenuestamp.sql +++ b/htdocs/install/mysql/data/llx_c_revenuestamp.sql @@ -1,13 +1,4 @@ --- Copyright (C) 2001-2004 Rodolphe Quiedeville --- Copyright (C) 2003 Jean-Louis Bergamo -- Copyright (C) 2004-2011 Laurent Destailleur --- Copyright (C) 2004 Benoit Mortier --- Copyright (C) 2004 Guillaume Delecourt --- Copyright (C) 2005-2009 Regis Houssin --- Copyright (C) 2007 Patrick Raguin --- Copyright (C) 2010-2011 Juanjo Menent --- Copyright (C) 2012 Sebastian Neuwert --- Copyright (C) 2012 Ricardo Schluter -- -- 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 @@ -35,5 +26,5 @@ delete from llx_c_revenuestamp; --- TUNISIA -- -insert into llx_c_revenuestamp(rowid,fk_pays,taux,note,active) values (101, 10, '0.4', 'Timbre fiscal', 1); +-- TUNISIA (id country=10) -- +insert into llx_c_revenuestamp(rowid,fk_pays,taux,note,active) values (101, 10, 0.4, 'Revenue stamp tunisia', 1); diff --git a/htdocs/install/mysql/data/llx_c_tva.sql b/htdocs/install/mysql/data/llx_c_tva.sql index b5f578f579b..b6d38949451 100644 --- a/htdocs/install/mysql/data/llx_c_tva.sql +++ b/htdocs/install/mysql/data/llx_c_tva.sql @@ -219,13 +219,13 @@ insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 6 insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values ( 64, 6, '0','0','VAT Rate 0', 1); -- TUNISIA (id country=10) -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (101,10, '6','0','VAT 6%', 1, 1, '4', 0.4, '7'); -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (102,10, '12','0','VAT 12%',1, 1, '4', 0.4, '7'); -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (103,10, '18','0','VAT 18%',1, 1, '4', 0.4, '7'); -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (104,10, '7.5','0','VAT 6% Majoré à 25% (7.5%)',1, 1, '4', 0.4, '7'); -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (105,10, '15','0','VAT 12% Majoré à 25% (15%)',1, 1, '4', 0.4, '7'); -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (106,10, '22.5','0','VAT 18% Majoré à 25% (22.5%)',1, 1, '4', 0.4, '7'); -insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (107,10, '0','0','VAT Rate 0', 1, 1, '4', 0.4, '7'); +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (101,10, '6','0','VAT 6%', 1, 1, '4', 0, null); +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (102,10, '12','0','VAT 12%',1, 1, '4', 0, null); +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (103,10, '18','0','VAT 18%',1, 1, '4', 0, null); +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (104,10, '7.5','0','VAT 6% Majoré à 25% (7.5%)',1, 1, '4', 0, null); +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (105,10, '15','0','VAT 12% Majoré à 25% (15%)',1, 1, '4', 0, null); +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (106,10, '22.5','0','VAT 18% Majoré à 25% (22.5%)',1, 1, '4', 0, null); +insert into llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active,localtax1,localtax1_type,localtax2,localtax2_type) values (107,10, '0','0','VAT Rate 0', 1, 1, '4', 0, null); -- UKRAINE (id country=226) INSERT INTO llx_c_tva(rowid,fk_pays,taux,recuperableonly,note,active) values (2261,226, '20','0','VAT standart rate',1); diff --git a/htdocs/install/mysql/migration/3.3.0-3.4.0.sql b/htdocs/install/mysql/migration/3.3.0-3.4.0.sql index e6b82dc565e..571ba7373a2 100755 --- a/htdocs/install/mysql/migration/3.3.0-3.4.0.sql +++ b/htdocs/install/mysql/migration/3.3.0-3.4.0.sql @@ -130,8 +130,6 @@ CREATE TABLE llx_c_revenuestamp insert into llx_c_revenuestamp(rowid,fk_pays,taux,note,active) values (101, 10, '0.4', 'Timbre fiscal', 1); -ALTER TABLE llx_actioncomm ADD COLUMN code varchar(32) NULL after fk_action; - ALTER TABLE llx_c_tva MODIFY COLUMN localtax1_type varchar(10) NOT NULL DEFAULT '0'; ALTER TABLE llx_c_tva MODIFY COLUMN localtax2_type varchar(10) NOT NULL DEFAULT '0'; ALTER TABLE llx_commande_fournisseurdet MODIFY COLUMN localtax1_type varchar(10) NOT NULL DEFAULT '0'; @@ -148,6 +146,13 @@ ALTER TABLE llx_facturedet MODIFY COLUMN localtax1_type varchar(10) NOT NULL DEF ALTER TABLE llx_facturedet MODIFY COLUMN localtax2_type varchar(10) NOT NULL DEFAULT '0'; ALTER TABLE llx_propaldet MODIFY COLUMN localtax1_type varchar(10) NOT NULL DEFAULT '0'; ALTER TABLE llx_propaldet MODIFY COLUMN localtax2_type varchar(10) NOT NULL DEFAULT '0'; +-- No more use type 7, use revenuse stamp instead +UPDATE llx_c_tva set localtax1=0, localtax1_type='0' where localtax1_type = '7'; +UPDATE llx_c_tva set localtax2=0, localtax2_type='0' where localtax2_type = '7'; + + +ALTER TABLE llx_actioncomm ADD COLUMN code varchar(32) NULL after fk_action; + ALTER TABLE llx_holiday ADD COLUMN note text; ALTER TABLE llx_holiday ADD COLUMN note_public text; @@ -197,5 +202,9 @@ ALTER TABLE llx_societe MODIFY COLUMN zip varchar(25); ALTER TABLE llx_user ADD COLUMN address varchar(255); ALTER TABLE llx_user ADD COLUMN zip varchar(25); ALTER TABLE llx_user ADD COLUMN town varchar(50); -ALTER TABLE llx_user ADD COLUMN fk_state integer DEFAULT 0; -- +ALTER TABLE llx_user ADD COLUMN fk_state integer DEFAULT 0; ALTER TABLE llx_user ADD COLUMN fk_country integer DEFAULT 0; + + + + diff --git a/htdocs/install/mysql/tables/llx_c_tva.sql b/htdocs/install/mysql/tables/llx_c_tva.sql index 219b1fb9744..46aa3632faa 100644 --- a/htdocs/install/mysql/tables/llx_c_tva.sql +++ b/htdocs/install/mysql/tables/llx_c_tva.sql @@ -24,9 +24,9 @@ create table llx_c_tva fk_pays integer NOT NULL, taux double NOT NULL, localtax1 double NOT NULL DEFAULT 0, - localtax1_type varchar(10) NOT NULL DEFAULT '0', + localtax1_type varchar(10) NOT NULL DEFAULT '0', localtax2 double NOT NULL DEFAULT 0, - localtax2_type varchar(10) NOT NULL DEFAULT '0', + localtax2_type varchar(10) NOT NULL DEFAULT '0', recuperableonly integer NOT NULL DEFAULT 0, note varchar(128), active tinyint DEFAULT 1 NOT NULL, diff --git a/htdocs/societe/class/societe.class.php b/htdocs/societe/class/societe.class.php index c87a6ef11f4..ecf387e13c2 100644 --- a/htdocs/societe/class/societe.class.php +++ b/htdocs/societe/class/societe.class.php @@ -82,7 +82,9 @@ class Societe extends CommonObject var $idprof1; // IdProf1 (Ex: Siren in France) var $idprof2; // IdProf2 (Ex: Siret in France) var $idprof3; // IdProf3 (Ex: Ape in France) - var $idprof4; // IdProf4 (Ex: RCS in France) + var $idprof4; // IdProf4 (Ex: RCS in France) + var $idprof5; // IdProf5 + var $idprof6; // IdProf6 var $prefix_comm; @@ -2599,40 +2601,53 @@ class Societe extends CommonObject } /** - * Check if localtax define for company - * Used to build previews or test instances. - * id must be 0 if object instance is a specimen. + * Check if thirdparty may using localtax or not * - * @param localTaxNum $localTaxNum 1 or 2 - * @return boolean true / false + * @param int $localTaxNum To get info for only localtax1 or localtax2 + * @return array array(0=>boolean, 1=>boolean) */ - function hasLocalTax($localTaxNum) { - global $user,$langs,$conf; + function useLocalTax($localTaxNum=0) + { + $sql = "SELECT t.localtax1, t.localtax2"; + $sql .= " FROM ".MAIN_DB_PREFIX."c_tva as t, ".MAIN_DB_PREFIX."c_pays as p"; + $sql .= " WHERE t.fk_pays = p.rowid AND p.code = '".$this->country_code."'"; + $sql .= " AND t.active = 1"; + if (empty($localTaxNum)) $sql .= " AND (t.localtax1_type <> '0' OR t.localtax2_type <> '0')"; + elseif ($localTaxNum == 1) $sql .= " AND t.localtax1_type <> '0'"; + elseif ($localTaxNum == 2) $sql .= " AND t.localtax2_type <> '0'"; - // check parameter - if ($localTaxNum != 1 && $localTaxNum != 2) - return false; + dol_syslog("useLocalTax sql=".$sql); + $resql=$this->db->query($sql); + if ($resql) + { + return ($this->db->num_rows($resql) > 0); + } + else return false; + } - // Search local taxes - $sql = "SELECT t.localtax1, t.localtax2"; - $sql .= " FROM ".MAIN_DB_PREFIX."c_tva as t, ".MAIN_DB_PREFIX."c_pays as p"; - $sql .= " WHERE t.fk_pays = p.rowid AND p.code = '".$this->country_code."'"; - $sql .= " AND t.active = 1"; - if ($localTaxNum == 1) - $sql .= " AND t.localtax1 <> 0"; - elseif ($localTaxNum == 2) - $sql .= " AND t.localtax2 <> 0"; + /** + * Check if thirdparty is from a country using revenue stamps + * + * @return boolean Yes or no + */ + function useRevenueStamp() + { + $sql = "SELECT COUNT(*) as nb FROM ".MAIN_DB_PREFIX."c_revenuestamp as r, ".MAIN_DB_PREFIX."c_pays as p"; + $sql .= " WHERE r.fk_pays = p.rowid AND p.code = '".$this->country_code."'"; + $sql .= " AND r.active = 1"; - dol_syslog("get_localtax sql=".$sql); + dol_syslog("useRevenueStamp sql=".$sql); $resql=$this->db->query($sql); if ($resql) { - return ($this->db->num_rows($resql) > 0); - + $obj=$this->db->fetch_object($resql); + return (($obj->nb > 0)?true:false); } else - return false; - + { + $this->error=$this->db->lasterror(); + return false; + } } /** @@ -2752,7 +2767,7 @@ class Societe extends CommonObject /** * Set commnunication level * - * @param User $user Utilisateur qui definie la remise + * @param User $user User making change * @return int <0 if KO, >0 if OK */ function set_commnucation_level($user) From 4d527d26af5609f343783d563685050de9ea08c3 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 23 Mar 2013 17:40:18 +0100 Subject: [PATCH 11/35] New: support full address into user cards. --- htdocs/user/class/user.class.php | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php index feb1b6164e0..37ff6735df5 100644 --- a/htdocs/user/class/user.class.php +++ b/htdocs/user/class/user.class.php @@ -912,6 +912,11 @@ class User extends CommonObject $this->office_phone = $contact->phone_pro; $this->office_fax = $contact->fax; $this->user_mobile = $contact->phone_mobile; + $this->address = $contact->address; + $this->zip = $contact->zip; + $this->town = $contact->town; + $this->state_id = $contact->state_id; + $this->country_id = $contact->country_id; if (empty($login)) $login=strtolower(substr($contact->firstname, 0, 4)) . strtolower(substr($contact->lastname, 0, 4)); $this->login = $login; @@ -974,11 +979,16 @@ class User extends CommonObject // Positionne parametres $this->admin = 0; - $this->lastname = $member->lastname; - $this->firstname = $member->firstname; - $this->email = $member->email; - $this->fk_member = $member->id; - $this->pass = $member->pass; + $this->lastname = $member->lastname; + $this->firstname = $member->firstname; + $this->email = $member->email; + $this->fk_member = $member->id; + $this->pass = $member->pass; + $this->address = $member->address; + $this->zip = $member->zip; + $this->town = $member->town; + $this->state_id = $member->state_id; + $this->country_id = $member->country_id; if (empty($login)) $login=strtolower(substr($member->firstname, 0, 4)) . strtolower(substr($member->lastname, 0, 4)); $this->login = $login; @@ -1120,6 +1130,11 @@ class User extends CommonObject $sql.= ", firstname = '".$this->db->escape($this->firstname)."'"; $sql.= ", login = '".$this->db->escape($this->login)."'"; $sql.= ", admin = ".$this->admin; + $sql.= ", address = '".$this->db->escape($this->address)."'"; + $sql.= ", zip = '".$this->db->escape($this->zip)."'"; + $sql.= ", town = '".$this->db->escape($this->town)."'"; + $sql.= ", fk_state = '".$this->db->escape($this->state_id)."'"; + $sql.= ", fk_country = '".$this->db->escape($this->country_id)."'"; $sql.= ", office_phone = '".$this->db->escape($this->office_phone)."'"; $sql.= ", office_fax = '".$this->db->escape($this->office_fax)."'"; $sql.= ", user_mobile = '".$this->db->escape($this->user_mobile)."'"; From 73de8d169f5fbb333df96058121be69f4b924360 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 23 Mar 2013 18:04:46 +0100 Subject: [PATCH 12/35] Fix: Avoid call method on non object error --- .../core/class/commondocgenerator.class.php | 28 +++++++++---------- .../doc/doc_generic_invoice_odt.modules.php | 10 +++---- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/htdocs/core/class/commondocgenerator.class.php b/htdocs/core/class/commondocgenerator.class.php index faccaa31545..9561aa288fb 100755 --- a/htdocs/core/class/commondocgenerator.class.php +++ b/htdocs/core/class/commondocgenerator.class.php @@ -185,11 +185,11 @@ abstract class CommonDocGenerator } $array_thirdparty=array_merge($array_thirdparty,array('company_options_'.$key => $object->array_options['options_'.$key])); } - } + } return $array_thirdparty; } - + /** * Define array with couple substitution key => substitution value * @@ -201,7 +201,7 @@ abstract class CommonDocGenerator function get_substitutionarray_propal($object,$outputlangs,$array_key='object') { global $conf; - + $array_propal=array( $array_key.'_id'=>$object->id, $array_key.'_ref'=>$object->ref, @@ -224,14 +224,14 @@ abstract class CommonDocGenerator $array_key.'_note_private'=>$object->note, $array_key.'_note'=>$object->note_public, ); - + // Add vat by rates foreach ($object->lines as $line) { if (empty($array_propal[$array_key.'_total_vat_'.$line->tva_tx])) $array_propal[$array_key.'_total_vat_'.$line->tva_tx]=0; $array_propal[$array_key.'_total_vat_'.$line->tva_tx]+=$line->total_tva; } - + // Retrieve extrafields if(is_array($object->array_options) && count($object->array_options)) { @@ -240,12 +240,12 @@ abstract class CommonDocGenerator $extrafields = new ExtraFields($this->db); $extralabels = $extrafields->fetch_name_optionals_label('propal',true); $object->fetch_optionals($object->id,$extralabels); - + $array_propal = $this->fill_substitutionarray_with_extrafields($object,$array_propal,$extrafields,$array_key,$outputlangs); } return $array_propal; } - + /** * Define array with couple substitution key => substitution value @@ -257,7 +257,7 @@ abstract class CommonDocGenerator function get_substitutionarray_propal_lines($line,$outputlangs) { global $conf; - + return array( 'line_fulldesc'=>doc_getlinedesc($line,$outputlangs), 'line_product_ref'=>$line->product_ref, @@ -274,7 +274,7 @@ abstract class CommonDocGenerator 'line_date_end'=>$line->date_end ); } - + /** * Fill array with couple extrafield key => extrafield value * @@ -309,14 +309,14 @@ abstract class CommonDocGenerator { $object->array_options['options_'.$key] = ($object->array_options['options_'.$key]!="0000-00-00 00:00:00"?dol_print_date($object->array_options['options_'.$key],'dayhour'):''); } - $array_to_fill=array_merge($array_to_fill,array($array_key.'_options_'.$key => $object->array_options['options_'.$key])); + $array_to_fill=array_merge($array_to_fill,array($array_key.'_options_'.$key => $object->array_options['options_'.$key])); } - + return $array_to_fill; - + } - - + + /** * Rect pdf * diff --git a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php index 957b5d85428..977de72d164 100644 --- a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php +++ b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php @@ -139,7 +139,7 @@ class doc_generic_invoice_odt extends ModelePDFFactures if (empty($resarray['object_total_vat_'.$line->tva_tx])) $resarray['object_total_vat_'.$line->tva_tx]=0; $resarray['object_total_vat_'.$line->tva_tx]+=$line->total_tva; } - + // Retrieve extrafields if(is_array($object->array_options) && count($object->array_options)) { @@ -148,7 +148,7 @@ class doc_generic_invoice_odt extends ModelePDFFactures $extrafields = new ExtraFields($this->db); $extralabels = $extrafields->fetch_name_optionals_label('facture',true); $object->fetch_optionals($object->id,$extralabels); - + $resarray = $this->fill_substitutionarray_with_extrafields($object,$resarray,$extrafields,$array_key='object',$outputlangs); } return $resarray; @@ -358,14 +358,14 @@ class doc_generic_invoice_odt extends ModelePDFFactures { $socobject=$object->client; } - + // Fetch info for linked propal $linked_propal = $object->fetchObjectLinked('','','',''); print '
';
                 //print_r($object->linkedObjects['propal']); exit;
 
                 $propal_object = $object->linkedObjects['propal'][0];
-                
+
                 // Make substitution
                 $substitutionarray=array(
                     '__FROM_NAME__' => $this->emetteur->nom,
@@ -415,7 +415,7 @@ class doc_generic_invoice_odt extends ModelePDFFactures
 				$array_soc=$this->get_substitutionarray_mysoc($mysoc,$outputlangs);
 				$array_thirdparty=$this->get_substitutionarray_thirdparty($socobject,$outputlangs);
 				$array_objet=$this->get_substitutionarray_object($object,$outputlangs);
-				$array_propal=$this->get_substitutionarray_propal($propal_object,$outputlangs,'propal');
+				$array_propal=is_object($propal_object)?$this->get_substitutionarray_propal($propal_object,$outputlangs,'propal'):array();
 
 				$tmparray = array_merge($array_user,$array_soc,$array_thirdparty,$array_objet,$array_propal);
 				complete_substitutions_array($tmparray, $outputlangs, $object);

From 9fe0d2cdd25927b2909c34ed4aea94d1b4998a7a Mon Sep 17 00:00:00 2001
From: Laurent Destailleur 
Date: Sat, 23 Mar 2013 18:22:25 +0100
Subject: [PATCH 13/35] Fix: Removed a lors 'pre'. Also accurency of data must
 not be overwrite by odt template engine (to be compatible with all countries
 precision).

---
 .../doc/doc_generic_invoice_odt.modules.php       | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php
index 977de72d164..ee80dbbb141 100644
--- a/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php
+++ b/htdocs/core/modules/facture/doc/doc_generic_invoice_odt.modules.php
@@ -121,16 +121,16 @@ class doc_generic_invoice_odt extends ModelePDFFactures
         	'object_payment_mode'=>($outputlangs->transnoentitiesnoconv('PaymentType'.$object->mode_reglement_code)!='PaymentType'.$object->mode_reglement_code?$outputlangs->transnoentitiesnoconv('PaymentType'.$object->mode_reglement_code):$object->mode_reglement),
         	'object_payment_term_code'=>$object->cond_reglement_code,
         	'object_payment_term'=>($outputlangs->transnoentitiesnoconv('PaymentCondition'.$object->cond_reglement_code)!='PaymentCondition'.$object->cond_reglement_code?$outputlangs->transnoentitiesnoconv('PaymentCondition'.$object->cond_reglement_code):$object->cond_reglement),
-        	'object_total_ht'=>price2num($object->total_ht,2),
-            'object_total_vat'=>price2num($object->total_tva,2),
-            'object_total_ttc'=>price2num($object->total_ttc,2),
+        	'object_total_ht'=>price2num($object->total_ht),
+            'object_total_vat'=>price2num($object->total_tva),
+            'object_total_ttc'=>price2num($object->total_ttc),
             'object_total_discount_ht' => price2num($object->getTotalDiscount(), 0, $outputlangs),
             'object_vatrate'=>(isset($object->tva)?vatrate($object->tva):''),
             'object_note_private'=>$object->note,
             'object_note'=>$object->note_public,
         	// Payments
             'object_already_payed'=>$alreadypayed,
-            'object_remain_to_pay'=>price2num($object->total_ttc - $sumpayed,2)
+            'object_remain_to_pay'=>price2num($object->total_ttc - $sumpayed)
         );
 
         // Add vat by rates
@@ -174,9 +174,9 @@ class doc_generic_invoice_odt extends ModelePDFFactures
             'line_up'=>price($line->subprice, 0, $outputlangs),
             'line_qty'=>$line->qty,
             'line_discount_percent'=>($line->remise_percent?$line->remise_percent.'%':''),
-            'line_price_ht'=>price2num($line->total_ht, 2),
-            'line_price_ttc'=>price2num($line->total_ttc, 2),
-            'line_price_vat'=>price2num($line->total_tva, 2),
+            'line_price_ht'=>price2num($line->total_ht),
+            'line_price_ttc'=>price2num($line->total_ttc),
+            'line_price_vat'=>price2num($line->total_tva),
             'line_date_start'=>dol_print_date($line->date_start, 'day', false, $outputlangs),
             'line_date_end'=>dol_print_date($line->date_end, 'day', false, $outputlangs),
         );
@@ -361,7 +361,6 @@ class doc_generic_invoice_odt extends ModelePDFFactures
 
                 // Fetch info for linked propal
                 $linked_propal = $object->fetchObjectLinked('','','','');
-                print '
';
                 //print_r($object->linkedObjects['propal']); exit;
 
                 $propal_object = $object->linkedObjects['propal'][0];

From 7f61061805e963ef30f072cb6ecc7ee59e785c2f Mon Sep 17 00:00:00 2001
From: Grand Philippe 
Date: Sat, 23 Mar 2013 19:08:02 +0100
Subject: [PATCH 14/35] fix : wrong URL

---
 htdocs/compta/bank/rappro.php | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/htdocs/compta/bank/rappro.php b/htdocs/compta/bank/rappro.php
index 2463c768098..d631e8e1843 100644
--- a/htdocs/compta/bank/rappro.php
+++ b/htdocs/compta/bank/rappro.php
@@ -84,7 +84,7 @@ if ($action == 'rappro' && $user->rights->banque->consolidate)
 
     if (! $error)
     {
-		header('Location: '.DOL_URL_ROOT.'/compta/bank/rappro?account='.$id);	// To avoid to submit twice and allow back
+		header('Location: '.DOL_URL_ROOT.'/compta/bank/rappro.php?account='.$id);	// To avoid to submit twice and allow back
     	exit;
     }
 }

From c3589e97856911e080a99fbcc98084091f99a449 Mon Sep 17 00:00:00 2001
From: Laurent Destailleur 
Date: Sat, 23 Mar 2013 19:23:17 +0100
Subject: [PATCH 15/35] Some debug into cron module: - Because cron is a
 module, constant must start with CRON_. - Miscellanous fixes. - For external
 link to run jobs from url, we must forge url using conf file and not
 autodetect url.

---
 htdocs/core/class/html.formcron.class.php     |  16 +-
 htdocs/core/lib/cron.lib.php                  |  25 +--
 htdocs/core/modules/modCron.class.php         |  16 +-
 htdocs/cron/admin/cron.php                    |  79 +++++----
 htdocs/cron/card.php                          | 142 ++++++++-------
 htdocs/cron/class/cronjob.class.php           | 162 +++++++++---------
 htdocs/langs/fr_FR/cron.lang                  |   4 +-
 htdocs/public/cron/cron_run_jobs.php          |  12 +-
 .../eldy/img/{menus => }/object_cron.png      | Bin
 scripts/cron/cron_run_jobs.php                | 102 ++++++-----
 10 files changed, 297 insertions(+), 261 deletions(-)
 rename htdocs/theme/eldy/img/{menus => }/object_cron.png (100%)
 mode change 100644 => 100755 scripts/cron/cron_run_jobs.php

diff --git a/htdocs/core/class/html.formcron.class.php b/htdocs/core/class/html.formcron.class.php
index 2acb83e3f05..b6747e04a56 100644
--- a/htdocs/core/class/html.formcron.class.php
+++ b/htdocs/core/class/html.formcron.class.php
@@ -41,7 +41,7 @@ class FormCron extends Form
 		return 1;
 	}
 
-	
+
 	/**
 	 * Display On Off selector
 	 *
@@ -53,7 +53,7 @@ class FormCron extends Form
 	function select_typejob($htmlname,$selected=0,$readonly=0)
 	{
 		global $langs;
-		
+
 		$langs->load('cron@cron');
 		if (!empty($readonly)) {
 			if ($selected=='command') {
@@ -68,26 +68,26 @@ class FormCron extends Form
 				$out.='';
 			}
 		}else {
-		
-		$out='';
+
 		if ($selected=='command') {
 			$selected_attr=' selected=\"selected\" ';
 		} else {
 			$selected_attr='';
 		}
 		$out.= '';
-		
+
 		if ($selected=='method') {
 			$selected_attr=' selected=\"selected\" ';
 		} else {
 			$selected_attr='';
 		}
 		$out.= '';
-		
+
 		$out.='';
 		}
-		
+
 		return $out;
 	}
 }
diff --git a/htdocs/core/lib/cron.lib.php b/htdocs/core/lib/cron.lib.php
index abd85131e29..7ba1e7b38a3 100644
--- a/htdocs/core/lib/cron.lib.php
+++ b/htdocs/core/lib/cron.lib.php
@@ -15,19 +15,18 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see .
  */
+
 /**
  *	\file       cron/lib/cron.lib.php
- *	\brief      Ensemble de fonctions de base pour le module jobs
- *	\ingroup    jobs
+ *	\brief      Function for module cron
+ *	\ingroup    cron
  */
 
 /**
- * Return array of tabs to used on pages for third parties cards.
+ * Return array of tabs to used on pages to setup cron module.
  *
- * @param 	Object	$object		Object company shown
  * @return 	array				Array of tabs
  */
-
 function cronadmin_prepare_head()
 {
     global $langs, $conf, $user;
@@ -35,18 +34,24 @@ function cronadmin_prepare_head()
     $head = array();
 
     $head[$h][0] = dol_buildpath('/cron/admin/cron.php', 1);
-    $head[$h][1] = $langs->trans("CronSetup");
+    $head[$h][1] = $langs->trans("Miscellanous");
     $head[$h][2] = 'setup';
     $h++;
-    
+
     complete_head_from_modules($conf, $langs, $object, $head, $h, 'cronadmin');
-    
+
     complete_head_from_modules($conf, $langs, $object, $head, $h, 'cronadmin', 'remove');
-    
+
 
     return $head;
 }
 
+/**
+ * Return array of tabs to used on a cron job
+ *
+ * @param 	Object	$object		Object cron
+ * @return 	array				Array of tabs
+ */
 function cron_prepare_head($object)
 {
 	global $langs, $conf, $user;
@@ -59,7 +64,7 @@ function cron_prepare_head($object)
 	$h++;
 
 	$head[$h][0] = dol_buildpath('/cron/info.php', 1).'?id='.$object->id;
-	$head[$h][1] = $langs->trans("CronInfoPage");
+	$head[$h][1] = $langs->trans("Info");
 	$head[$h][2] = 'info';
 	$h++;
 
diff --git a/htdocs/core/modules/modCron.class.php b/htdocs/core/modules/modCron.class.php
index 53d9afabf30..828e3c2664a 100644
--- a/htdocs/core/modules/modCron.class.php
+++ b/htdocs/core/modules/modCron.class.php
@@ -43,7 +43,7 @@ class modCron extends DolibarrModules
 
 		// Family can be 'crm','financial','hr','projects','products','ecm','technic','other'
 		// It is used to group modules in module setup page
-        $this->family = "technic";
+        $this->family = "base";
         // Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module)
         $this->name = preg_replace('/^mod/i','',get_class($this));
         $this->description = "Enable the Dolibarr cron service";
@@ -70,9 +70,9 @@ class modCron extends DolibarrModules
 
         // Constantes
         //-----------
-        	$this->const = array(	
+        	$this->const = array(
 				0=>array(
-					'MAIN_CRON_KEY',
+					'CRON_KEY',
 					'chaine',
 					'',
 					'CRON KEY',
@@ -93,25 +93,25 @@ class modCron extends DolibarrModules
 		$this->rights = array();		// Permission array used by this module
 		$this->rights_class = 'cron';
 		$r=0;
-		
+
 		$this->rights[$r][0] = 23001;
 		$this->rights[$r][1] = 'Read cron jobs';
 		$this->rights[$r][3] = 1;
 		$this->rights[$r][4] = 'read';
 		$r++;
-		
+
 		$this->rights[$r][0] = 23002;
 		$this->rights[$r][1] = 'Create cron Jobs';
 		$this->rights[$r][3] = 0;
 		$this->rights[$r][4] = 'create';
 		$r++;
-		
+
 		$this->rights[$r][0] = 23003;
 		$this->rights[$r][1] = 'Delete cron Jobs';
 		$this->rights[$r][3] = 0;
 		$this->rights[$r][4] = 'delete';
 		$r++;
-		
+
 		$this->rights[$r][0] = 23004;
 		$this->rights[$r][1] = 'Execute cron Jobs';
 		$this->rights[$r][3] = 0;
@@ -131,7 +131,7 @@ class modCron extends DolibarrModules
 						        'target'=>'',
 						        'user'=>2);				                // 0=Menu for internal users, 1=external users, 2=both
         $r++;
-        
+
         $this->menu[$r]=array(	'fk_menu'=>'fk_mainmenu=home,fk_leftmenu=modulesadmintools',		    // Use 'fk_mainmenu=xxx' or 'fk_mainmenu=xxx,fk_leftmenu=yyy' where xxx is mainmenucode and yyy is a leftmenucode
 						        'type'=>'left',			                // This is a Left menu entry
 						        'titre'=>'CronListInactive',
diff --git a/htdocs/cron/admin/cron.php b/htdocs/cron/admin/cron.php
index 894e9dc4457..7846a25e636 100644
--- a/htdocs/cron/admin/cron.php
+++ b/htdocs/cron/admin/cron.php
@@ -1,28 +1,28 @@
 
  * Copyright (C) 2005-2013	Laurent Destailleur		
-* Copyright (C) 2011		Juanjo Menent			
-* Copyright (C) 2012		Regis Houssin			
-* Copyright (C) 2013		Florian Henry			
-*
-* 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 3 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, see .
-*/
+ * Copyright (C) 2011		Juanjo Menent			
+ * Copyright (C) 2012		Regis Houssin			
+ * Copyright (C) 2013		Florian Henry			
+ *
+ * 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 3 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, see .
+ */
 
 /**
  *      \file       cron/admin/cron.php
-*		\ingroup    cron
-*/
+ *		\ingroup    cron
+ */
 
 // Dolibarr environment
 $res = @include("../../main.inc.php"); // From htdocs directory
@@ -44,7 +44,7 @@ if (!empty($actionsave))
 
 	$db->begin();
 
-	$i+=dolibarr_set_const($db,'MAIN_CRON_KEY',trim(GETPOST("MAIN_CRON_KEY")),'chaine',0,'',0);
+	$i+=dolibarr_set_const($db,'CRON_KEY',trim(GETPOST("CRON_KEY")),'chaine',0,'',0);
 
 	if ($i >= 1)
 	{
@@ -61,7 +61,7 @@ if (!empty($actionsave))
 
 /*
  *	View
-*/
+ */
 
 llxHeader();
 
@@ -70,6 +70,7 @@ print_fiche_titre($langs->trans("CronSetup"),$linkback,'setup');
 
 // Configuration header
 $head = cronadmin_prepare_head();
+
 dol_fiche_head($head,'setup',$langs->trans("Module2300Name"),0,'cron');
 
 print "
\n"; @@ -86,7 +87,7 @@ print ""; print '
'; print ''; -print ''; @@ -101,38 +102,42 @@ print ''; print ''; +dol_fiche_end(); + print '

'; +// Define $urlwithroot +$urlwithouturlroot=preg_replace('/'.preg_quote(DOL_URL_ROOT,'/').'$/i','',trim($dolibarr_main_url_root)); +$urlwithroot=$urlwithouturlroot.DOL_URL_ROOT; // This is to use external domain name found into config file +//$urlwithroot=DOL_MAIN_URL_ROOT; // This is to use same domain name than current + // Cron launch print ''.$langs->trans("URLToLaunchCronJobs").':
'; -$url=dol_buildpath('/public/cron/cron_run_jobs.php',1).(empty($conf->global->MAIN_CRON_KEY)?'':'?securitykey='.$conf->global->MAIN_CRON_KEY.'&').'userlogin='.$user->login; +$url=$urlwithroot.'/public/cron/cron_run_jobs.php'.(empty($conf->global->CRON_KEY)?'':'?securitykey='.$conf->global->CRON_KEY.'&').'userlogin='.$user->login; print img_picto('','object_globe.png').' '.$url."
\n"; print ' '.$langs->trans("OrToLaunchASpecificJob").'
'; -$url=dol_buildpath('/public/cron/cron_run_jobs.php',1).(empty($conf->global->MAIN_CRON_KEY)?'':'?securitykey='.$conf->global->MAIN_CRON_KEY.'&').'userlogin='.$user->login.'&id=cronjobid'; +$url=$urlwithroot.'/public/cron/cron_run_jobs.php'.(empty($conf->global->CRON_KEY)?'':'?securitykey='.$conf->global->CRON_KEY.'&').'userlogin='.$user->login.'&id=cronjobid'; print img_picto('','object_globe.png').' '.$url."
\n"; print '
'; -print '
'; $linuxlike=1; if (preg_match('/^win/i',PHP_OS)) $linuxlike=0; if (preg_match('/^mac/i',PHP_OS)) $linuxlike=0; -if ($linuxlike) { - print $langs->trans("CronExplainHowToRunUnix"); -} else { - print $langs->trans("CronExplainHowToRunWin"); -} print '
'; print ''.$langs->trans("FileToLaunchCronJobs").':
'; -$file='/scripts/cron/cron_run_jobs.php'.' '.(empty($conf->global->MAIN_CRON_KEY)?'securitykey':''.$conf->global->MAIN_CRON_KEY.'').' '.$user->login.' cronjobid(optionnal)'; -if ($linuxlike) { - print 'user@host:'.DOL_DOCUMENT_ROOT.'$ php ..'.$file."
\n"; -} else { - print DOL_DOCUMENT_ROOT.'> php ..'.$file."
\n"; -} + +$file='/scripts/cron/cron_run_jobs.php'.' '.(empty($conf->global->CRON_KEY)?'securitykey':''.$conf->global->CRON_KEY.'').' '.$user->login.' [cronjobid]'; +print '
\n"; print '
'; +print $langs->trans("Note").': '; +if ($linuxlike) { + print $langs->trans("CronExplainHowToRunUnix"); +} else { + print $langs->trans("CronExplainHowToRunWin"); +} @@ -149,7 +154,7 @@ if (! empty($conf->use_javascript_ajax)) generic: true }, function(token) { - $("#MAIN_CRON_KEY").val(token); + $("#CRON_KEY").val(token); }); }); });'; diff --git a/htdocs/cron/card.php b/htdocs/cron/card.php index bd6ffb0e5c9..feb86585181 100644 --- a/htdocs/cron/card.php +++ b/htdocs/cron/card.php @@ -42,6 +42,11 @@ $action=GETPOST('action','alpha'); $confirm=GETPOST('confirm','alpha'); $cancel=GETPOST('cancel'); + +/* + * Actions + */ + $object = new Cronjob($db); if (!empty($id)) { $result=$object->fetch($id); @@ -56,13 +61,13 @@ if(!empty($cancel)) { }else { Header ( "Location: ".dol_buildpath('/cron/cron/list.php',1).'?status=1'); } - + } // Delete jobs if ($action == 'confirm_delete' && $confirm == "yes" && $user->rights->cron->delete){ - + $result = $object->delete($user); if ($result < 0) { @@ -105,7 +110,7 @@ if ($action=='add') { $object->dateend=dol_mktime(GETPOST('dateendhour','int'), GETPOST('dateendmin','int'), 0, GETPOST('dateendmonth','int'), GETPOST('dateendday','int'), GETPOST('dateendyear','int')); $object->unitfrequency=GETPOST('unitfrequency','int'); $object->frequency=$object->unitfrequency * GETPOST('nbfrequency','int'); - + //Ajout de la tache cron $result = $object->create($user); @@ -138,7 +143,7 @@ if ($action=='update') { $object->dateend=dol_mktime(GETPOST('dateendhour','int'), GETPOST('dateendmin','int'), 0, GETPOST('dateendmonth','int'), GETPOST('dateendday','int'), GETPOST('dateendyear','int')); $object->unitfrequency=GETPOST('unitfrequency','int'); $object->frequency=$object->unitfrequency * GETPOST('nbfrequency','int'); - + //Ajout de la tache cron $result = $object->update($user); @@ -187,16 +192,23 @@ if ($action=='inactive') { } -/* - * View -*/ +/* + * View + */ + +$form = new Form($db); +$formCron = new FormCron($db); + llxHeader('',$langs->trans("CronAdd")); -if ($action=='edit' || empty($action) || $action=='delete' || $action=='execute') { +if ($action=='edit' || empty($action) || $action=='delete' || $action=='execute') +{ $head=cron_prepare_head($object); dol_fiche_head($head, 'card', $langs->trans("CronTask"), 0, 'bill'); -} elseif ($action=='create') { +} +elseif ($action=='create') +{ print_fiche_titre($langs->trans("CronTask"),'','setup'); } @@ -223,9 +235,6 @@ if ($conf->use_javascript_ajax) print ''."\n"; } -$form = new Form($db); -$formCron = new FormCron($db); - if ($action == 'delete') { $ret=$form->form_confirm($_SERVER['PHP_SELF']."?id=".$object->id,$langs->trans("CronDelete"),$langs->trans("CronConfirmDelete"),"confirm_delete",'','',1); @@ -243,33 +252,37 @@ if ($action == 'execute'){ /* * Create Template -*/ + */ -if (empty($object->status)) { +if (empty($object->status) && $action != 'create') +{ dol_htmloutput_mesg($langs->trans("CronTaskInactive"),'','warning',1); } if (($action=="create") || ($action=="edit")) { - + print ''; print ''."\n"; - if (!empty($object->id)) { + if (!empty($object->id)) + { print ''."\n"; print ''."\n"; - } else { + } + else + { print ''."\n"; } - + print '
'.$langs->transcountry("AmountLT1",$mysoc->country_code).''.price($object->total_localtax1,1,'',1,-1,-1,$conf->currency).'
'.$langs->transcountry("AmountLT2",$mysoc->country_code).''.price($object->total_localtax2,1,'',1,-1,-1,$conf->currency).'
'.$langs->trans('AmountTTC').''.price($object->total_ttc,1,'',1,-1,-1,$conf->currency).'
'; print ''; print ''; print '
'.$langs->trans("KeyForCronAccess").''; +print ''; if (! empty($conf->use_javascript_ajax)) print ' '.img_picto($langs->trans('Generate'), 'refresh', 'id="generate_token" class="linkobject"'); print '
'; print '"; - print ""; print ""; print "\n"; - + print ""; print "\n"; - + print ""; print "\n"; - + print ""; $priority=0; @@ -315,10 +328,10 @@ if (($action=="create") || ($action=="edit")) { print ""; print "\n"; - + print ""; - print ""; print "\n"; - - + print '"; print ""; print ""; print ""; print ""; print ""; print "\n"; - + print '"; print ""; print "\n"; - + print '"; print "\n"; - + print '"; print "\n"; - + print '
'; print $langs->trans('CronLabel')."label."\" /> "; + print "label."\" /> "; print ""; print "
"; print $langs->trans('CronType').""; print $formCron->select_typejob('jobtype',$object->jobtype); @@ -290,7 +303,7 @@ if (($action=="create") || ($action=="edit")) { print ""; print "
"; print $langs->trans('CronDtEnd').""; if(!empty($object->dateend)){ @@ -303,7 +316,7 @@ if (($action=="create") || ($action=="edit")) { print ""; print "
"; print $langs->trans('CronPriority').""; print "
"; print $langs->trans('CronEvery')."unitfrequency=="60"){ $input .= ' checked="checked" />'; } @@ -337,7 +350,7 @@ if (($action=="create") || ($action=="edit")) { $input .= ""; print $input; - $input = "unitfrequency=="3600"){ $input .= ' checked="checked" />'; } @@ -347,7 +360,7 @@ if (($action=="create") || ($action=="edit")) { $input .= ""; print $input; - $input = "unitfrequency=="86400"){ $input .= ' checked="checked" />'; } @@ -370,11 +383,10 @@ if (($action=="create") || ($action=="edit")) { print ""; print "
'; print $langs->trans('CronModule').""; - print "module_name."\" /> "; + print "module_name."\" /> "; print ""; print $form->textwithpicto('',$langs->trans("CronModuleHelp"),1,'help'); @@ -383,7 +395,7 @@ if (($action=="create") || ($action=="edit")) { print '
'; print $langs->trans('CronClassFile').""; - print "classesname."\" /> "; + print "classesname."\" /> "; print ""; print $form->textwithpicto('',$langs->trans("CronClassFileHelp"),1,'help'); @@ -392,7 +404,7 @@ if (($action=="create") || ($action=="edit")) { print '
'; print $langs->trans('CronObject').""; - print "objectname."\" /> "; + print "objectname."\" /> "; print ""; print $form->textwithpicto('',$langs->trans("CronObjectHelp"),1,'help'); @@ -401,7 +413,7 @@ if (($action=="create") || ($action=="edit")) { print '
'; print $langs->trans('CronMethod').""; - print "methodename."\" /> "; + print "methodename."\" /> "; print ""; print $form->textwithpicto('',$langs->trans("CronMethodHelp"),1,'help'); @@ -410,22 +422,22 @@ if (($action=="create") || ($action=="edit")) { print '
'; print $langs->trans('CronArgs').""; - print "params."\" /> "; + print "params."\" /> "; print ""; print $form->textwithpicto('',$langs->trans("CronArgsHelp"),1,'help'); print "
'; print $langs->trans('CronCommand').""; - print "command."\" /> "; + print "command."\" /> "; print ""; print $form->textwithpicto('',$langs->trans("CronCommandHelp"),1,'help'); print "
'; print $langs->trans('CronNote').""; $doleditor = new DolEditor('note', $object->note, '', 160, 'dolibarr_notes', 'In', true, false, 0, 4, 90); @@ -435,7 +447,7 @@ if (($action=="create") || ($action=="edit")) { print "
'; print "trans("Save")."\">"; print "trans("Cancel")."\">"; @@ -443,20 +455,22 @@ if (($action=="create") || ($action=="edit")) { print ""; print "
'; - + print "\n"; - -}else { - + +} +else +{ + /* * view Template - */ - + */ + // box add_jobs_box print ''; - + print '"; print ""; print ""; - + print ""; - + print ""; - + print ""; print ""; - + print ""; print ""; - + print ""; print ""; - - + + print '"; - + print '"; - + print '"; - + print '"; - + print '"; - + print '"; - + print '"; - + print '"; print '
'; print $langs->trans('CronId')."".$form->showrefnav($object, 'id', $linkback, 1, 'rowid', 'id'); @@ -466,7 +480,7 @@ if (($action=="create") || ($action=="edit")) { print $langs->trans('CronLabel')."".$object->label; print "
"; print $langs->trans('CronType').""; print $formCron->select_typejob('jobtype',$object->jobtype,1); @@ -476,32 +490,32 @@ if (($action=="create") || ($action=="edit")) { print $langs->trans('CronHourStart').""; if(!empty($object->datestart)) {print dol_print_date($object->datestart,'dayhourtext');} else {print $langs->trans('CronNone');} print "
"; print $langs->trans('CronDtEnd').""; if(!empty($object->dateend)) {print dol_print_date($object->dateend,'dayhourtext');} else {print $langs->trans('CronNone');} print "
"; print $langs->trans('CronPriority')."".$object->priority; print "
"; print $langs->trans('CronNbRun')."".$object->nbrun; print "
"; print $langs->trans('CronEvery').""; if($object->unitfrequency == "60") print $langs->trans('CronEach')." ".($object->frequency/$object->unitfrequency)." ".$langs->trans('Minutes'); if($object->unitfrequency == "3600") print $langs->trans('CronEach')." ".($object->frequency/$object->unitfrequency)." ".$langs->trans('Hours'); if($object->unitfrequency == "86400") print $langs->trans('CronEach')." ".($object->frequency/$object->unitfrequency)." ".$langs->trans('Days'); - if($object->unitfrequency == "604800") print $langs->trans('CronEach')." ".($object->frequency/$object->unitfrequency)." ".$langs->trans('Weeks'); + if($object->unitfrequency == "604800") print $langs->trans('CronEach')." ".($object->frequency/$object->unitfrequency)." ".$langs->trans('Weeks'); print "
'; print $langs->trans('CronModule').""; print $object->module_name; @@ -526,44 +540,48 @@ if (($action=="create") || ($action=="edit")) { print $langs->trans('CronArgs').""; print $object->params; print "
'; print $langs->trans('CronCommand').""; print $object->command; print "
'; print $langs->trans('CronNote').""; print $object->note; print "
'; print $langs->trans('CronDtLastLaunch').""; if(!empty($object->datelastrun)) {print dol_print_date($object->datelastrun,'dayhourtext');} else {print $langs->trans('CronNone');} print "
'; print $langs->trans('CronDtNextLaunch').""; if(!empty($object->datenextrun)) {print dol_print_date($object->datenextrun,'dayhourtext');} else {print $langs->trans('CronNone');} print "
'; print $langs->trans('CronDtLastResult').""; if(!empty($object->datelastresult)) {print dol_print_date($object->datelastresult,'dayhourtext');} else {print $langs->trans('CronNone');} print "
'; print $langs->trans('CronLastResult').""; print $object->lastresult; print "
'; print $langs->trans('CronLastOutput').""; print nl2br($object->lastoutput); print "
'; - + + + print dol_fiche_end(); + + print "\n\n
\n"; if (! $user->rights->cron->create) { print ''.$langs->trans("Edit").''; diff --git a/htdocs/cron/class/cronjob.class.php b/htdocs/cron/class/cronjob.class.php index b24055c6f3d..ebc6c4952e3 100644 --- a/htdocs/cron/class/cronjob.class.php +++ b/htdocs/cron/class/cronjob.class.php @@ -37,7 +37,7 @@ class Cronjob extends CommonObject var $table_element='cronjob'; //!< Name of table without prefix where object is stored var $id; - + var $ref; //Use for prevnext_ref var $jobtype; var $tms=''; @@ -65,10 +65,10 @@ class Cronjob extends CommonObject var $fk_user_mod; var $note; var $nbrun; - + var $lines; - + /** @@ -96,7 +96,7 @@ class Cronjob extends CommonObject $error=0; // Clean parameters - + if (isset($this->label)) $this->label=trim($this->label); if (isset($this->jobtype)) $this->jobtype=trim($this->jobtype); if (isset($this->command)) $this->command=trim($this->command); @@ -152,7 +152,7 @@ class Cronjob extends CommonObject // Insert request $sql = "INSERT INTO ".MAIN_DB_PREFIX."cronjob("; - + $sql.= "datec,"; $sql.= "jobtype,"; $sql.= "label,"; @@ -179,9 +179,9 @@ class Cronjob extends CommonObject $sql.= "note,"; $sql.= "nbrun"; - + $sql.= ") VALUES ("; - + $sql.= " ".$this->db->idate(dol_now()).","; $sql.= " ".(! isset($this->jobtype)?'NULL':"'".$this->db->escape($this->jobtype)."'").","; $sql.= " ".(! isset($this->label)?'NULL':"'".$this->db->escape($this->label)."'").","; @@ -208,16 +208,16 @@ class Cronjob extends CommonObject $sql.= " ".(! isset($this->note)?'NULL':"'".$this->db->escape($this->note)."'").","; $sql.= " ".(! isset($this->nbrun)?'0':"'".$this->db->escape($this->nbrun)."'").""; - + $sql.= ")"; - + $this->db->begin(); dol_syslog(get_class($this)."::create sql=".$sql, LOG_DEBUG); $resql=$this->db->query($sql); if (! $resql) { $error++; $this->errors[]="Error ".$this->db->lasterror(); } - + if (! $error) { $this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."cronjob"); @@ -266,7 +266,7 @@ class Cronjob extends CommonObject global $langs; $sql = "SELECT"; $sql.= " t.rowid,"; - + $sql.= " t.tms,"; $sql.= " t.datec,"; $sql.= " t.jobtype,"; @@ -294,7 +294,7 @@ class Cronjob extends CommonObject $sql.= " t.note,"; $sql.= " t.nbrun"; - + $sql.= " FROM ".MAIN_DB_PREFIX."cronjob as t"; $sql.= " WHERE t.rowid = ".$id; @@ -308,7 +308,7 @@ class Cronjob extends CommonObject $this->id = $obj->rowid; $this->ref = $obj->rowid; - + $this->tms = $this->db->jdate($obj->tms); $this->datec = $this->db->jdate($obj->datec); $this->label = $obj->label; @@ -336,7 +336,7 @@ class Cronjob extends CommonObject $this->note = $obj->note; $this->nbrun = $obj->nbrun; - + } $this->db->free($resql); @@ -349,7 +349,7 @@ class Cronjob extends CommonObject return -1; } } - + /** * Load object in memory from the database * @@ -392,8 +392,8 @@ class Cronjob extends CommonObject $sql.= " t.fk_user_mod,"; $sql.= " t.note,"; $sql.= " t.nbrun"; - - + + $sql.= " FROM ".MAIN_DB_PREFIX."cronjob as t"; $status = (empty($status))?'0':'1'; $sql.= " WHERE t.status=".$status; @@ -403,43 +403,43 @@ class Cronjob extends CommonObject $sql.= ' AND '.$key.' LIKE \'%'.$value.'%\''; } } - - - $sql.= " ORDER BY $sortfield $sortorder "; + + + $sql.= " ORDER BY $sortfield $sortorder "; if (!empty($limit) && !empty($offset)) { $sql.= $this->db->plimit( $limit + 1 ,$offset); } - + $sqlwhere = array(); - + if (!empty($module_name)) { $sqlwhere[]='(t.module_name='.$module_name.')'; } if (count($sqlwhere)>0) { $sql.= " WHERE ".implode(' AND ',$sqlwhere); } - + dol_syslog(get_class($this)."::fetch_all sql=".$sql, LOG_DEBUG); $resql=$this->db->query($sql); if ($resql) { $num=$this->db->num_rows($resql); $i=0; - + if ($num) { $this->lines=array(); - + while ($i < $num) { - + $line = new Cronjobline(); - + $obj = $this->db->fetch_object($resql); - + $line->id = $obj->rowid; $line->ref = $obj->rowid; - + $line->tms = $this->db->jdate($obj->tms); $line->datec = $this->db->jdate($obj->datec); $line->label = $obj->label; @@ -466,15 +466,15 @@ class Cronjob extends CommonObject $line->fk_user_mod = $obj->fk_user_mod; $line->note = $obj->note; $line->nbrun = $obj->nbrun; - + $this->lines[]=$line; - + $i++; - + } } $this->db->free($resql); - + return 1; } else @@ -496,13 +496,13 @@ class Cronjob extends CommonObject function update($user=0, $notrigger=0) { global $conf, $langs; - + $langs->load('cron'); - + $error=0; // Clean parameters - + if (isset($this->label)) $this->label=trim($this->label); if (isset($this->jobtype)) $this->jobtype=trim($this->jobtype); if (isset($this->command)) $this->command=trim($this->command); @@ -558,11 +558,11 @@ class Cronjob extends CommonObject $this->errors[]=$langs->trans('CronFieldMandatory',$langs->trans('CronObject')); $error++; } - + // Update request $sql = "UPDATE ".MAIN_DB_PREFIX."cronjob SET"; - + $sql.= " label=".(isset($this->label)?"'".$this->db->escape($this->label)."'":"null").","; $sql.= " jobtype=".(isset($this->jobtype)?"'".$this->db->escape($this->jobtype)."'":"null").","; $sql.= " command=".(isset($this->command)?"'".$this->db->escape($this->command)."'":"null").","; @@ -587,7 +587,7 @@ class Cronjob extends CommonObject $sql.= " note=".(isset($this->note)?"'".$this->db->escape($this->note)."'":"null").","; $sql.= " nbrun=".(isset($this->nbrun)?$this->nbrun:"null"); - + $sql.= " WHERE rowid=".$this->id; $this->db->begin(); @@ -595,7 +595,7 @@ class Cronjob extends CommonObject dol_syslog(get_class($this)."::update sql=".$sql, LOG_DEBUG); $resql = $this->db->query($sql); if (! $resql) { $error++; $this->errors[]="Error ".$this->db->lasterror(); } - + if (! $error) { if (! $notrigger) @@ -755,7 +755,7 @@ class Cronjob extends CommonObject { $this->id=0; $this->ref=0; - + $this->tms=''; $this->datec=''; $this->label=''; @@ -780,24 +780,24 @@ class Cronjob extends CommonObject $this->status=''; $this->fk_user_author=''; $this->fk_user_mod=''; - $this->note=''; + $this->note=''; $this->nbrun=''; } - + /** - * Load object information + * Load object information * * @return void */ function info() { global $langs; - + $sql = "SELECT"; $sql.= " f.rowid, f.datec, f.tms, f.fk_user_mod, f.fk_user_author"; $sql.= " FROM ".MAIN_DB_PREFIX."cronjob as f"; $sql.= " WHERE f.rowid = ".$this->id; - + dol_syslog(get_class($this)."::fetch sql=".$sql, LOG_DEBUG); $resql=$this->db->query($sql); if ($resql) @@ -812,7 +812,7 @@ class Cronjob extends CommonObject $this->user_creation = $obj->fk_user_author; } $this->db->free($resql); - + return 1; } else @@ -822,26 +822,26 @@ class Cronjob extends CommonObject return -1; } } - + /** * Run a job - * + * * @param string $userlogin User login * @return int <0 if KO, >0 if OK */ function run_jobs($userlogin) { global $langs, $conf; - + $langs->load('cron'); - + if (empty($userlogin)) { $this->error="User login is mandatory"; dol_syslog(get_class($this)."::run_jobs ".$this->error, LOG_ERR); return -1; } - + require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php'; $user=new User($this->db); $result=$user->fetch('',$userlogin); @@ -856,14 +856,14 @@ class Cronjob extends CommonObject return -1; } } - + dol_syslog(get_class($this)."::run_jobs userlogin:$userlogin", LOG_DEBUG); - + $error=0; $now=dol_now(); - + $this->db->begin(); - + if ($this->jobtype=='method') { // load classes $ret=dol_include_once("/".$this->module_name."/class/".$this->classesname,$this->objectname); @@ -872,19 +872,19 @@ class Cronjob extends CommonObject dol_syslog(get_class($this)."::run_jobs ".$this->error, LOG_ERR); return -1; } - + // Load langs $result=$langs->load($this->module_name.'@'.$this->module_name); if ($result<0) { dol_syslog(get_class($this)."::run_jobs Cannot load module langs".$langs->error, LOG_ERR); return -1; } - + dol_syslog(get_class($this)."::run_jobs ".$this->objectname."->".$this->methodename."(".$this->params.");", LOG_DEBUG); - + // Create Object for the call module $object = new $this->objectname($this->db); - + $params_arr = array(); $params_arr=explode(", ",$this->params); if (!is_array($params_arr)) { @@ -892,7 +892,7 @@ class Cronjob extends CommonObject }else { $result = call_user_func_array(array($object, $this->methodename), $params_arr); } - + if ($result===false) { dol_syslog(get_class($this)."::run_jobs ".$object->error, LOG_ERR); return -1; @@ -900,15 +900,15 @@ class Cronjob extends CommonObject $this->lastoutput=var_export($result,true); $this->lastresult=var_export($result,true); } - + } elseif ($this->jobtype=='command') { dol_syslog(get_class($this)."::run_jobs system:".$this->command, LOG_DEBUG); $output_arr=array(); - + exec($this->command, $output_arr,$retval); - + dol_syslog(get_class($this)."::run_jobs output_arr:".var_export($output_arr,true), LOG_DEBUG); - + $this->lastoutput=''; if (is_array($output_arr) && count($output_arr)>0) { foreach($output_arr as $val) { @@ -917,7 +917,7 @@ class Cronjob extends CommonObject } $this->lastresult=$retval; } - + $this->datelastresult=$now; $this->datelastrun=$now; $this->nbrun=$this->nbrun+1; @@ -930,23 +930,23 @@ class Cronjob extends CommonObject $this->db->commit(); return 1; } - - + + } - + /** * Reprogram a job * * @param string $userlogin User login - * @return int <0 if KO, >0 if OK - * + * @return int <0 if KO, >0 if OK + * */ function reprogram_jobs($userlogin) { global $langs, $conf; - + dol_syslog(get_class($this)."::reprogram_jobs userlogin:$userlogin", LOG_DEBUG); - + require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php'; $user=new User($this->db); $result=$user->fetch('',$userlogin); @@ -961,9 +961,9 @@ class Cronjob extends CommonObject return -1; } } - + dol_syslog(get_class($this)."::reprogram_jobs ", LOG_DEBUG); - + if (empty($this->datenextrun)) { $this->datenextrun=dol_now()+$this->frequency; } else { @@ -972,15 +972,15 @@ class Cronjob extends CommonObject } else { $this->datenextrun=$this->datenextrun+$this->frequency; } - } + } $result = $this->update($user); if ($result<0) { dol_syslog(get_class($this)."::reprogram_jobs ".$this->error, LOG_ERR); return -1; } - + return 1; - + } } @@ -989,10 +989,10 @@ class Cronjob extends CommonObject * Crob Job line class */ class Cronjobline{ - + var $id; var $ref; - + var $tms=''; var $datec=''; var $label; @@ -1018,7 +1018,7 @@ class Cronjobline{ var $fk_user_mod; var $note; var $nbrun; - + /** * Constructor * diff --git a/htdocs/langs/fr_FR/cron.lang b/htdocs/langs/fr_FR/cron.lang index d0aaccfecf7..b5fa47b336a 100644 --- a/htdocs/langs/fr_FR/cron.lang +++ b/htdocs/langs/fr_FR/cron.lang @@ -9,8 +9,8 @@ URLToLaunchCronJobs=URL pour lancer les taches automatiques OrToLaunchASpecificJob=Ou pour lancer une tache spécifique KeyForCronAccess=Clé de sécurité pour l'URL de lancement des taches automatiques FileToLaunchCronJobs=Commande pour lancer les taches automatiques -CronExplainHowToRunUnix=Sur un environement Unix vous pouvez paramétré CronTab pour executer cette commande toute les minutes -CronExplainHowToRunWin=Sur un environement Microsoft(tm) Windows vous pouvez utilisr le planificateur de tache pour lancer cette commande toute les minutes +CronExplainHowToRunUnix=Sur un environement Unix vous pouvez paramétrer CronTab pour executer cette commande toute les minutes. +CronExplainHowToRunWin=Sur un environement Microsoft(tm) Windows vous pouvez utiliser le planificateur de tache pour lancer cette commande toute les minutes. # # Menu diff --git a/htdocs/public/cron/cron_run_jobs.php b/htdocs/public/cron/cron_run_jobs.php index 838c298212f..7f25cfaf63c 100644 --- a/htdocs/public/cron/cron_run_jobs.php +++ b/htdocs/public/cron/cron_run_jobs.php @@ -49,7 +49,7 @@ if (empty($key)) { echo 'securitykey is require'; exit; } -if($key != $conf->global->MAIN_CRON_KEY) +if($key != $conf->global->CRON_KEY) { echo 'securitykey is wrong'; exit; @@ -104,13 +104,13 @@ if(is_array($object->lines) && (count($object->lines)>0)){ foreach($object->lines as $line){ dol_syslog("cron_run_jobs.php:: fetch cronjobid:".$line->id, LOG_ERR); - + //If date_next_jobs is less of current dat, execute the program, and store the execution time of the next execution in database if ((($line->datenextrun <= $now) && $line->dateend < $now) || ((empty($line->datenextrun)) && (empty($line->dateend)))){ - + dol_syslog("cron_run_jobs.php:: torun line->datenextrun:".dol_print_date($line->datenextrun,'dayhourtext')." line->dateend:".dol_print_date($line->dateend,'dayhourtext')." now:".dol_print_date($now,'dayhourtext'), LOG_ERR); - + $cronjob=new Cronjob($db); $result=$cronjob->fetch($line->id); if ($result<0) { @@ -125,7 +125,7 @@ if(is_array($object->lines) && (count($object->lines)>0)){ dol_syslog("cron_run_jobs.php:: run_jobs Error".$cronjob->error, LOG_ERR); exit; } - + // we re-program the next execution and stores the last execution time for this job $result=$cronjob->reprogram_jobs($userlogin); if ($result<0) { @@ -133,7 +133,7 @@ if(is_array($object->lines) && (count($object->lines)>0)){ dol_syslog("cron_run_jobs.php:: reprogram_jobs Error".$cronjob->error, LOG_ERR); exit; } - + } } echo "OK"; diff --git a/htdocs/theme/eldy/img/menus/object_cron.png b/htdocs/theme/eldy/img/object_cron.png similarity index 100% rename from htdocs/theme/eldy/img/menus/object_cron.png rename to htdocs/theme/eldy/img/object_cron.png diff --git a/scripts/cron/cron_run_jobs.php b/scripts/cron/cron_run_jobs.php old mode 100644 new mode 100755 index 0c22107bde6..159fadd3a61 --- a/scripts/cron/cron_run_jobs.php +++ b/scripts/cron/cron_run_jobs.php @@ -27,72 +27,74 @@ if (! defined('NOREQUIREMENU')) define('NOREQUIREMENU','1'); if (! defined('NOREQUIREHTML')) define('NOREQUIREHTML','1'); if (! defined('NOREQUIREAJAX')) define('NOREQUIREAJAX','1'); if (! defined('NOREQUIRESOC')) define('NOREQUIRESOC','1'); -if (! defined('NOLOGIN')) define('NOLOGIN','1'); +if (! defined('NOLOGIN')) define('NOLOGIN','1'); //if (! defined('NOREQUIRETRAN')) define('NOREQUIRETRAN','1'); -$sapi_type = php_sapi_name(); -$script_file = basename(__FILE__); -$path=dirname(__FILE__).'/'; - -// Test if batch mode -if (substr($sapi_type, 0, 3) == 'cgi') { - echo "Error: You are using PHP for CGI. To execute ".$script_file." from command line, you must use PHP for CLI mode.\n"; - exit; -} +$sapi_type = php_sapi_name(); +$script_file = basename(__FILE__); +$path=dirname(__FILE__).'/'; + +// Test if batch mode +if (substr($sapi_type, 0, 3) == 'cgi') { + echo "Error: You are using PHP for CGI. To execute ".$script_file." from command line, you must use PHP for CLI mode.\n"; + exit; +} + if (! isset($argv[1]) || ! $argv[1]) { print "Usage: ".$script_file." securitykey userlogin cronjobid(optional)\n"; exit; } -$key=$argv[1]; +$key=$argv[1]; -if (! isset($argv[2]) || ! $argv[2]) { - print "Usage: ".$script_file." securitykey userlogin cronjobid(optional)\n"; - exit; -} else { - $userlogin=$argv[2]; -} +if (! isset($argv[2]) || ! $argv[2]) { + print "Usage: ".$script_file." securitykey userlogin cronjobid(optional)\n"; + exit; +} else { + $userlogin=$argv[2]; +} + +require_once ($path."../../htdocs/master.inc.php"); +require_once (DOL_DOCUMENT_ROOT."/cron/class/cronjob.class.php"); +require_once (DOL_DOCUMENT_ROOT.'/user/class/user.class.php'); +require_once (DOL_DOCUMENT_ROOT."/cron/class/cronjob.class.php"); -$res=@include("../../master.inc.php"); // For root directory -if (! $res) $res=@include("../../../master.inc.php"); // For "custom" directory -if (! $res) die("Include of master.inc.php fails"); +/* + * Main + */ - -// librarie jobs -require_once (DOL_DOCUMENT_ROOT_ALT."/cron/class/cronjob.class.php"); - - -//Check security key -if($key != $conf->global->MAIN_CRON_KEY) +// Check security key +if ($key != $conf->global->CRON_KEY) { - echo 'securitykey is wrong'; + print "Error: securitykey is wrong\n"; exit; } -//Check user login -require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php'; +// Check user login $user=new User($db); $result=$user->fetch('',$userlogin); -if ($result<0) { - echo "User Error:".$user->error; +if ($result < 0) +{ + echo "User Error: ".$user->error; dol_syslog("cron_run_jobs.php:: User Error:".$user->error, LOG_ERR); exit; -}else { - if (empty($user->id)) { - echo " User user login:".$userlogin." do not exists"; +} +else +{ + if (empty($user->id)) + { + echo " User user login: ".$userlogin." do not exists"; dol_syslog(" User user login:".$userlogin." do not exists", LOG_ERR); exit; } } -if (isset($argv[3]) || $argv[3]) { +if (isset($argv[3]) || $argv[3]) +{ $id = $argv[3]; } -// librarie jobs -require_once (DOL_DOCUMENT_ROOT_ALT."/cron/class/cronjob.class.php"); - // create a jobs object $object = new Cronjob($db); @@ -103,18 +105,21 @@ if (empty($id)) { } $result = $object->fetch_all('DESC','t.rowid', 0, 0, 1, $filter); -if ($result<0) { - echo "Error:".$cronjob->error; - dol_syslog("cron_run_jobs.php:: fetch Error".$cronjob->error, LOG_ERR); +if ($result<0) +{ + echo "Error: ".$object->error; + dol_syslog("cron_run_jobs.php:: fetch Error ".$object->error, LOG_ERR); exit; } // current date $now=dol_now(); -if(is_array($object->lines) && (count($object->lines)>0)){ +if(is_array($object->lines) && (count($object->lines)>0)) +{ // Loop over job - foreach($object->lines as $line){ + foreach($object->lines as $line) + { //If date_next_jobs is less of current dat, execute the program, and store the execution time of the next execution in database if (($line->datenextrun < $now) && $line->dateend < $now){ @@ -132,7 +137,7 @@ if(is_array($object->lines) && (count($object->lines)>0)){ dol_syslog("cron_run_jobs.php:: run_jobs Error".$cronjob->error, LOG_ERR); exit; } - + // we re-program the next execution and stores the last execution time for this job $result=$cronjob->reprogram_jobs($userlogin); if ($result<0) { @@ -140,7 +145,10 @@ if(is_array($object->lines) && (count($object->lines)>0)){ dol_syslog("cron_run_jobs.php:: reprogram_jobs Error".$cronjob->error, LOG_ERR); exit; } - + } } -} \ No newline at end of file +} + +$db->close(); +?> \ No newline at end of file From 1e04ff8bbff4daf7f8672017d5ad2488ae0631d5 Mon Sep 17 00:00:00 2001 From: fhenry Date: Sat, 23 Mar 2013 20:36:32 +0100 Subject: [PATCH 16/35] Add Cron spanish translation (provided by david@luminososmarmenor.com) --- htdocs/langs/es_ES/admin.lang | 12 ++-- htdocs/langs/es_ES/cron.lang | 120 +++++++++++++++++----------------- 2 files changed, 65 insertions(+), 67 deletions(-) diff --git a/htdocs/langs/es_ES/admin.lang b/htdocs/langs/es_ES/admin.lang index 88328c5cfac..7c5101ce143 100644 --- a/htdocs/langs/es_ES/admin.lang +++ b/htdocs/langs/es_ES/admin.lang @@ -452,8 +452,8 @@ Module1780Name=Categorías Module1780Desc=Gestión de categorías (productos, proveedores y clientes) Module2000Name=Editor WYSIWYG Module2000Desc=Permite la edición de ciertas zonas de texto mediante un editor avanzado -Module2300Name=Cron -Module2300Desc=Gestor de tareas programadas +Module2300Name=Programador +Module2300Desc=Tareas programadas Module2400Name=Agenda Module2400Desc=Gestión de la agenda y de las acciones Module2500Name=Gestión Electrónica de Documentos @@ -677,10 +677,10 @@ Permission1411=Leer los movimientos contables Permission1412=Crear/modificar/anular movimientos contables Permission1415=Leer Balances, informes, diarios, libros maestros Permission1421=Exportar pedidos de clientes y atributos -Permission23001=Ver las tareas programadas -Permission23002=Crear/Modificar las tareas programadas -Permission23003=Eliminar las tareas programadas -Permission23004=Ejecutar las tareas programadas +Permission23001 = Ver tareas programadas +Permission23002 = Crear/actualizar tareas programadas +Permission23003 = Borrar tareas programadas +Permission23004 = Ejecutar tareas programadas Permission2401=Leer acciones (eventos o tareas) vinculadas a su cuenta Permission2402=Crear/eliminar acciones (eventos o tareas) vinculadas a su cuenta Permission2403=Modificar acciones (eventos o tareas) vinculadas a su cuenta diff --git a/htdocs/langs/es_ES/cron.lang b/htdocs/langs/es_ES/cron.lang index 37710fdd67d..4020f586e49 100644 --- a/htdocs/langs/es_ES/cron.lang +++ b/htdocs/langs/es_ES/cron.lang @@ -4,89 +4,87 @@ CHARSET=UTF-8 # # Admin # -CronSetup=Página de configuración del módulo - Gestión de tareas planificadas -URLToLaunchCronJobs=URL para lanzar las tareas automáticas -OrToLaunchASpecificJob=O para lanzar una tarea específica -KeyForCronAccess=Código de seguridad para la URL de lanzamiento de tareas automáticas -FileToLaunchCronJobs=Comando para lanzar las tareas automáticas -CronExplainHowToRunUnix=En un entorno Unix puede parametrizar CronTab para ejecutar este comando cada minuto -CronExplainHowToRunWin=En un entorno Microsoft(tm) Windows puede usar el planificador de tareas para lanzar este comando cada minuto -# -# Menu -# -CronListActive=Listado de tareas planificadas activas -CronListInactive= Listado de tareas planificadas inactivas - +CronSetup= Configuracion +URLToLaunchCronJobs=URL para ejecutar tareas Cron +OrToLaunchASpecificJob=O para ejecutar una tarea en concreto +KeyForCronAccess=clave para la URL para ejecutar tareas Cron +FileToLaunchCronJobs=Comando para ejecutar tareas Cron +CronExplainHowToRunUnix=En entorno Unix debes usar crontab para ejecutar el comando cada varios minutos +CronExplainHowToRunWin=En un entorno de Microsoft(tm) Windows puedes usar el programador de tareas para ejecutar el comando cada varios minutos # # Page list # -CronDateLastRun=Último lanzamiento -CronLastOutput=Última salida -CronLastResult=Último código devuelto +CronDateLastRun=Ultima ejecucion +CronLastOutput=Resultado de la ultima ejecucion +CronLastResult=Ultimo codigo de resultado +CronListOfCronJobs=Lista de tareas programadas CronCommand=Comando -CronList=Listado de tareas planificadas -CronDelete=Eliminar la tarea planificada -CronConfirmDelete=¿Está seguro de querer eliminar esta tarea planificada? -CronExecute=Ejecutar esta tarea -CronConfirmExecute=¿Está seguro de querer ejecutar ahora esta tarea? -CronInfo=Los trabajos permiten ejecutar las tareas a intervalos regulares -CronWaitingJobs=Sus trabajos en espera: +CronList=Lista de tareas Cron +CronDelete=Borrar tareas Cron +CronConfirmDelete=Estas seguro de querer eliminar estas tareas ? +CronExecute=Ejecutar Tarea +CronConfirmExecute=Estas seguro de querer ejecutar esta tarea ahora ? +CronInfo= Cron te permite ejecutar tareas que han sido programadas +CronWaitingJobs=Trabajos en espera CronTask=Tarea -CronNone=Ninguno +CronNone=Ninguna CronDtStart=Fecha inicio CronDtEnd=Fecha fin -CronDtNextLaunch=Próxima ejecución -CronDtLastLaunch=Última ejecución +CronDtNextLaunch=Siguiente ejecucion +CronDtLastLaunch=ultima ejecucion CronFrequency=Frecuencia -CronClass=Clase -CronMethod=Método -CronModule=Módulo -CronAction=Acción -CronStatus=Estado -CronStatusActive=Activa -CronStatusInactive=Inactiva -CronEach=Cada -CronNoJobs=Sin trabajos actualmente +CronClass=Class +CronMethod=Metodo +CronModule=Modulo +CronAction=Accion +CronStatus=Status +CronStatusActive=Activo +CronStatusInactive=Inactivo +CronNoJobs=Sin trabajos registrados CronPriority=Prioridad -CronLabel=Descripción -CronNbRun=Nº ejec. -CronDtLastResult=Fecha del último resultado de la última ejecución +CronLabel=Descripcion +CronNbRun=Nb. ejecutar # #Page card # -CronAdd=Añadir una tarea -CronHourStart=Dia y hora de inicio de la tarea -CronEvery=Ejecutar cada + +CronListActive=Tareas Activas +CronListInactive=Tareas Inactivas +CronAdd=Tarea Nueva +CronHourStart=Fecha y hora de inicio de la tarea +CronEvery=Y ejecutar la tarea cada CronObject=Instancia/Objeto a crear -CronArgs=Argumento -CronSaveSucess=Registro guardado -CronNote=Nota -CronFieldMandatory=El campo %s es obligatorio -CronErrEndDateStartDt=La fecha de fin no puede ser anterior a la de inicio -CronStatusActiveBtn=Activar -CronStatusInactiveBtn=Desactivar -CronTaskInactive=Esta tarea se encuentra desactivada +CronArgs=Parametros +CronSaveSucess=Guardado con exito +CronNote=Comentario +CronFieldMandatory=campos %s son obligatorios +CronErrEndDateStartDt=La fecha de finalizacion no puede ser anterior a la fecha de inicio +CronStatusActiveBtn=Activo +CronStatusInactiveBtn=Inactivo +CronTaskInactive=Esta tarea esta inactiva +CronDtLastResult=Fecha del ultimo resultado CronId=Id -CronClassFile=Clase (archivo) -CronModuleHelp=Nombre del directorio del módulo Dolibarr (funciona automáticamente con los módulos externos Dolibarr).
Por ejemplo para llamar al método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor del módulo es product -CronClassFileHelp=El archivo archivo que contiene el objeto.
Por ejemplo para llamar el método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor de la clase es product.class.php -CronObjectHelp=El nombre del objeto a crear.
Por ejemplo para llamar el método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor del objeto es Product -CronMethodHelp=El método a lanzar.
Por ejemplo para llamar el método fetch del objeto Product de Dolibarr /htdocs/product/class/product.class.php, el valor del método es fecth -CronArgsHelp=Los argumentos del método.
Por ejemplo para usar el método fetch del objeto Product deDolibarr /htdocs/product/class/product.class.php, el valor del parámetro podría ser 0, RefProduit -CronCommandHelp=El comando del sistema a ejecutar +CronClassFile=Classes (file name) +CronModuleHelp=Name of Dolibarr module directory (also work with external Dolibarr module).
For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of module is product +CronClassFileHelp=The file name to load.
For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of class file name is product.class.php +CronObjectHelp=The object name to load.
For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of class file name is Product +CronMethodHelp=The object method to launch.
For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of method is is fecth +CronArgsHelp=The method arguments.
For exemple to fetch method of Dolibarr Product object /htdocs/product/class/product.class.php, the value of paramters can be 0, ProductRef +CronCommandHelp=The system command line to execute. # # Info # -CronInfoPage=Información +CronInfoPage=Informacion + # # Common # -CronType=Tipo de acción a ejecutar -CronType_method=Método de una clase de un módulo Dolibarr +CronType=Tipo de tarea +CronType_method=Llamar a un metodo de clase Dolibarr CronType_command=Comando Shell -CronMenu=Cron -CronCannotLoadClass=imposible cargar la clase %s o el objeto %s \ No newline at end of file +CronMenu=Programador +CronCannotLoadClass=No se puede cargar la clase %s u objeto %s From 24427d2c658133ba12f449adac30e757f9145398 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 24 Mar 2013 00:35:40 +0100 Subject: [PATCH 17/35] Use combo list for revenue stamp --- htdocs/compta/facture.php | 40 ++++++-------- htdocs/core/class/html.formother.class.php | 64 +++++++++++++++++++++- 2 files changed, 79 insertions(+), 25 deletions(-) diff --git a/htdocs/compta/facture.php b/htdocs/compta/facture.php index f792d7c6e20..319160e9a99 100644 --- a/htdocs/compta/facture.php +++ b/htdocs/compta/facture.php @@ -30,31 +30,25 @@ */ require '../main.inc.php'; -require DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php'; -require DOL_DOCUMENT_ROOT . '/compta/paiement/class/paiement.class.php'; -require DOL_DOCUMENT_ROOT . '/core/modules/facture/modules_facture.php'; -require DOL_DOCUMENT_ROOT . '/core/class/discount.class.php'; -require DOL_DOCUMENT_ROOT . '/core/class/html.formfile.class.php'; -require DOL_DOCUMENT_ROOT . '/core/class/html.formother.class.php'; -require DOL_DOCUMENT_ROOT . '/core/lib/invoice.lib.php'; +require_once DOL_DOCUMENT_ROOT . '/compta/facture/class/facture.class.php'; +require_once DOL_DOCUMENT_ROOT . '/compta/paiement/class/paiement.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/modules/facture/modules_facture.php'; +require_once DOL_DOCUMENT_ROOT . '/core/class/discount.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/class/html.formfile.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/class/html.formother.class.php'; +require_once DOL_DOCUMENT_ROOT . '/core/lib/invoice.lib.php'; require_once DOL_DOCUMENT_ROOT . '/core/lib/functions2.lib.php'; require_once DOL_DOCUMENT_ROOT . '/core/lib/date.lib.php'; -require DOL_DOCUMENT_ROOT . '/core/class/extrafields.class.php'; - -if (! empty($conf->commande->enabled)) { - require DOL_DOCUMENT_ROOT . '/commande/class/commande.class.php'; -} -if (! empty($conf->projet->enabled)) { - require DOL_DOCUMENT_ROOT . '/projet/class/project.class.php'; - require DOL_DOCUMENT_ROOT . '/core/lib/project.lib.php'; -} +require_once DOL_DOCUMENT_ROOT . '/core/class/extrafields.class.php'; +if (! empty($conf->commande->enabled)) require_once DOL_DOCUMENT_ROOT . '/commande/class/commande.class.php'; +if (! empty($conf->projet->enabled)) require_once DOL_DOCUMENT_ROOT . '/projet/class/project.class.php'; +if (! empty($conf->projet->enabled)) require_once DOL_DOCUMENT_ROOT . '/core/lib/project.lib.php'; $langs->load('bills'); $langs->load('companies'); $langs->load('products'); $langs->load('main'); -if (! empty($conf->margin->enabled)) - $langs->load('margins'); +if (! empty($conf->margin->enabled)) $langs->load('margins'); $sall=trim(GETPOST('sall')); $projectid=(GETPOST('projectid')?GETPOST('projectid','int'):0); @@ -1777,14 +1771,15 @@ if ($action == 'update_extras') * View */ -llxHeader('',$langs->trans('Bill'),'EN:Customers_Invoices|FR:Factures_Clients|ES:Facturas_a_clientes'); - $form = new Form($db); -$htmlother = new FormOther($db); +$formother=new FormOther($db); $formfile = new FormFile($db); $bankaccountstatic=new Account($db); $now=dol_now(); +llxHeader('',$langs->trans('Bill'),'EN:Customers_Invoices|FR:Factures_Clients|ES:Facturas_a_clientes'); + + /********************************************************************* * @@ -3065,7 +3060,8 @@ else if ($id > 0 || ! empty($ref)) print '
'; print ''; print ''; - print ''; + print $formother->select_revenue_stamp(GETPOST('revenuestamp'), 'revenuestamp', $mysoc->country_code); + //print ''; print ' '; print '
'; } diff --git a/htdocs/core/class/html.formother.class.php b/htdocs/core/class/html.formother.class.php index dffb7f37982..cf7c6fb8bf6 100644 --- a/htdocs/core/class/html.formother.class.php +++ b/htdocs/core/class/html.formother.class.php @@ -153,10 +153,10 @@ class FormOther /** - * Retourne la liste des ecotaxes avec tooltip sur le libelle + * Return list of ecotaxes with label * - * @param string $selected code ecotaxes pre-selectionne - * @param string $htmlname nom de la liste deroulante + * @param string $selected Preselected ecotaxes + * @param string $htmlname Name of combo list * @return void */ function select_ecotaxes($selected='',$htmlname='ecotaxe_id') @@ -169,6 +169,7 @@ class FormOther $sql.= " WHERE e.active = 1 AND e.fk_pays = p.rowid"; $sql.= " ORDER BY pays, e.organization ASC, e.code ASC"; + dol_syslog(get_class($this).'::select_ecotaxes sql='.$sql); $resql=$this->db->query($sql); if ($resql) { @@ -206,6 +207,63 @@ class FormOther } } + + /** + * Return list of revenue stamp for country + * + * @param string $selected Value of preselected revenue stamp + * @param string $htmlname Name of combo list + * @return string HTML select list + */ + function select_revenue_stamp($selected='',$htmlname='revenuestamp',$country_code='') + { + global $langs; + + $out=''; + + $sql = "SELECT r.taux"; + $sql.= " FROM ".MAIN_DB_PREFIX."c_revenuestamp as r,".MAIN_DB_PREFIX."c_pays as p"; + $sql.= " WHERE r.active = 1 AND r.fk_pays = p.rowid"; + $sql.= " AND p.code = '".$country_code."'"; + + dol_syslog(get_class($this).'::select_revenue_stamp sql='.$sql); + $resql=$this->db->query($sql); + if ($resql) + { + $out.=''; + return $out; + } + else + { + dol_print_error($this->db); + return ''; + } + } + + /** * Return a HTML select list to select a percent * From 7fab08eae11cb95fe861d446766597da82401baa Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 24 Mar 2013 00:35:51 +0100 Subject: [PATCH 18/35] Save example --- dev/ldap/setup_example_activedirectory.jpg | Bin 0 -> 36874 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 dev/ldap/setup_example_activedirectory.jpg diff --git a/dev/ldap/setup_example_activedirectory.jpg b/dev/ldap/setup_example_activedirectory.jpg new file mode 100644 index 0000000000000000000000000000000000000000..64586da8b88a40d2e396934f6a99d0228e7bcaa8 GIT binary patch literal 36874 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 Date: Sun, 24 Mar 2013 03:12:40 +0100 Subject: [PATCH 19/35] New: SeparatorThousand and SeparatorDecimal accepts ' chars. --- htdocs/admin/system/dolibarr.php | 14 +++++++------- htdocs/core/lib/functions.lib.php | 22 ++++++++++------------ 2 files changed, 17 insertions(+), 19 deletions(-) diff --git a/htdocs/admin/system/dolibarr.php b/htdocs/admin/system/dolibarr.php index 2613ba59469..75b17a6776e 100644 --- a/htdocs/admin/system/dolibarr.php +++ b/htdocs/admin/system/dolibarr.php @@ -132,27 +132,27 @@ $var=!$var; print ''.$langs->trans("CurrentUserLanguage").''.$langs->getDefaultLang().''."\n"; // Thousands $var=!$var; -$thousand=$langs->trans("SeparatorThousand"); +$thousand=$langs->transnoentitiesnoconv("SeparatorThousand"); if ($thousand == 'SeparatorThousand') $thousand=' '; // ' ' does not work on trans method if ($thousand == 'None') $thousand=''; -print ''.$langs->trans("CurrentValueSeparatorThousand").''.($thousand==' '?$langs->trans("Space"):$thousand).''."\n"; +print ''.$langs->trans("CurrentValueSeparatorThousand").''.($thousand==' '?$langs->transnoentitiesnoconv("Space"):$thousand).''."\n"; // Decimals $var=!$var; -$dec=$langs->trans("SeparatorDecimal"); +$dec=$langs->transnoentitiesnoconv("SeparatorDecimal"); print ''.$langs->trans("CurrentValueSeparatorDecimal").''.$dec.''."\n"; // Show results of functions to see if everything works $var=!$var; -print '  => price2num(1233.56+1)'.price2num(1233.56+1,'2').''; +print '  => price2num(1233.56+1)'.price2num(1233.56+1,'2').''."\n"; $var=!$var; -print "  => price2num('."'1".$thousand."234".$dec."56')".price2num("1".$thousand."234".$dec."56",'2').""; +print "  => price2num('."'1".$thousand."234".$dec."56')".price2num("1".$thousand."234".$dec."56",'2')."\n"; if (($thousand != ',' && $thousand != '.') || ($thousand != ' ')) { $var=!$var; - print "  => price2num('."'1 234.56')".price2num("1 234.56",'2').""; + print "  => price2num('."'1 234.56')".price2num("1 234.56",'2').""; print "\n"; } $var=!$var; -print '  => price(1234.56)'.price(1234.56).''; +print '  => price(1234.56)'.price(1234.56).''."\n"; // Timezone $txt =$langs->trans("OSTZ").' (variable system TZ): '.(! empty($_ENV["TZ"])?$_ENV["TZ"]:$langs->trans("NotDefined")).'
'."\n"; $txt.=$langs->trans("PHPTZ").' (php.ini date.timezone): '.(ini_get("date.timezone")?ini_get("date.timezone"):$langs->trans("NotDefined")).''."\n"; // date.timezone must be in valued defined in http://fr3.php.net/manual/en/timezones.europe.php diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 3dec3cecc7f..22e4892af5f 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -2563,7 +2563,7 @@ function vatrate($rate,$addpercent=false,$info_bits=0,$usestarfornpr=0) * @param int $trunc 1=Truncate if there is too much decimals (default), 0=Does not truncate * @param int $rounding Minimum number of decimal to show. If not defined we use min($conf->global->MAIN_MAX_DECIMALS_UNIT,$conf->global->MAIN_MAX_DECIMALS_TOTAL) * @param int $forcerounding Force the number of decimal - * @param string $currency_code To add currency symbol (''=add nothing, 'XXX'=add currency symbols for XXX currency) + * @param string $currency_code To add currency symbol (''=add nothing, 'XXX'=add currency symbols for XXX currency) * @return string Chaine avec montant formate * * @see price2num Revert function of price @@ -2585,8 +2585,8 @@ function price($amount, $form=0, $outlangs='', $trunc=1, $rounding=-1, $forcerou // If $outlangs not forced, we use use language if (! is_object($outlangs)) $outlangs=$langs; - if ($outlangs->trans("SeparatorDecimal") != "SeparatorDecimal") $dec=$outlangs->trans("SeparatorDecimal"); - if ($outlangs->trans("SeparatorThousand")!= "SeparatorThousand") $thousand=$outlangs->trans("SeparatorThousand"); + if ($outlangs->transnoentitiesnoconv("SeparatorDecimal") != "SeparatorDecimal") $dec=$outlangs->transnoentitiesnoconv("SeparatorDecimal"); + if ($outlangs->transnoentitiesnoconv("SeparatorThousand")!= "SeparatorThousand") $thousand=$outlangs->transnoentitiesnoconv("SeparatorThousand"); if ($thousand == 'None') $thousand=''; //print "amount=".$amount." html=".$form." trunc=".$trunc." nbdecimal=".$nbdecimal." dec='".$dec."' thousand='".$thousand."'
"; @@ -2616,13 +2616,11 @@ function price($amount, $form=0, $outlangs='', $trunc=1, $rounding=-1, $forcerou if ($forcerounding >= 0) $nbdecimal = $forcerounding; // Format number + $output=number_format($amount, $nbdecimal, $dec, $thousand); if ($form) { - $output=preg_replace('/\s/',' ',number_format($amount, $nbdecimal, $dec, $thousand)); - } - else - { - $output=number_format($amount, $nbdecimal, $dec, $thousand); + $output=preg_replace('/\s/',' ',$output); + $output=preg_replace('/\'/',''',$output); } // Add symbol of currency if requested $cursymbolbefore=$cursymbolafter=''; @@ -2633,7 +2631,7 @@ function price($amount, $form=0, $outlangs='', $trunc=1, $rounding=-1, $forcerou else $cursymbolafter.=$outlangs->getCurrencySymbol($currency_code); } $output.=$cursymbolbefore.$end.$cursymbolafter; - + return $output; } @@ -2660,15 +2658,15 @@ function price2num($amount,$rounding='',$alreadysqlnb=0) // Numbers must be '1234.56' // Decimal delimiter for PHP and database SQL requests must be '.' $dec=','; $thousand=' '; - if ($langs->trans("SeparatorDecimal") != "SeparatorDecimal") $dec=$langs->trans("SeparatorDecimal"); - if ($langs->trans("SeparatorThousand")!= "SeparatorThousand") $thousand=$langs->trans("SeparatorThousand"); + if ($langs->transnoentitiesnoconv("SeparatorDecimal") != "SeparatorDecimal") $dec=$langs->transnoentitiesnoconv("SeparatorDecimal"); + if ($langs->transnoentitiesnoconv("SeparatorThousand")!= "SeparatorThousand") $thousand=$langs->transnoentitiesnoconv("SeparatorThousand"); if ($thousand == 'None') $thousand=''; //print "amount=".$amount." html=".$form." trunc=".$trunc." nbdecimal=".$nbdecimal." dec='".$dec."' thousand='".$thousand."'
"; // Convert value to universal number format (no thousand separator, '.' as decimal separator) if ($alreadysqlnb != 1) // If not a PHP number or unknown, we change format { - //print 'PP'.$amount.' - '.$dec.' - '.$thousand.'
'; + //print 'PP'.$amount.' - '.$dec.' - '.$thousand.' - '.intval($amount).'
'; // Convert amount to format with dolibarr dec and thousand (this is because PHP convert a number // to format defined by LC_NUMERIC after a calculation and we want source format to be like defined by Dolibarr setup. From a890c7b3ab448192d2e01bac701a508f2656380a Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 24 Mar 2013 03:51:49 +0100 Subject: [PATCH 20/35] Fix: Option to hide if no permission instead of grey was broken. --- htdocs/core/menus/standard/auguria.lib.php | 24 ++++--- htdocs/core/menus/standard/eldy.lib.php | 82 ++++++++++++---------- htdocs/core/menus/standard/empty.php | 34 +++++---- 3 files changed, 83 insertions(+), 57 deletions(-) diff --git a/htdocs/core/menus/standard/auguria.lib.php b/htdocs/core/menus/standard/auguria.lib.php index 7c70c3173ff..18ffe81ecdd 100644 --- a/htdocs/core/menus/standard/auguria.lib.php +++ b/htdocs/core/menus/standard/auguria.lib.php @@ -84,9 +84,9 @@ function print_auguria_menu($db,$atarget,$type_user,&$tabMenu,&$menu) } else if ($showmode == 2) $classname='class="tmenu"'; - print_start_menu_entry_auguria($idsel,$classname); + print_start_menu_entry_auguria($idsel,$classname,$showmode); print_text_menu_entry_auguria($newTabMenu[$i]['titre'], $showmode, $url, $id, $idsel, $classname, ($newTabMenu[$i]['target']?$newTabMenu[$i]['target']:$atarget)); - print_end_menu_entry_auguria(); + print_end_menu_entry_auguria($showmode); } print_end_menu_array_auguria(); @@ -111,12 +111,16 @@ function print_start_menu_array_auguria() * * @param string $idsel Text * @param string $classname String to add a css class + * @param int $showmode 0 = hide, 1 = allowed or 2 = not allowed * @return void */ -function print_start_menu_entry_auguria($idsel,$classname) +function print_start_menu_entry_auguria($idsel,$classname,$showmode) { - print ''; - print "\n"; + if ($showmode) + { + print '
'; + print "\n"; + } } /** diff --git a/htdocs/core/menus/standard/eldy.lib.php b/htdocs/core/menus/standard/eldy.lib.php index 64f415ac085..f7e5143344a 100644 --- a/htdocs/core/menus/standard/eldy.lib.php +++ b/htdocs/core/menus/standard/eldy.lib.php @@ -55,9 +55,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) else $classname = 'class="tmenu"'; $idsel='home'; - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($langs->trans("Home"), 1, DOL_URL_ROOT.'/index.php?mainmenu=home&leftmenu=', $id, $idsel, $classname, $atarget); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/index.php?mainmenu=home&leftmenu=', $langs->trans("Home"), 0, $showmode, $atarget, "home", ''); // Third parties @@ -73,9 +73,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) else $classname = 'class="tmenu"'; $idsel='companies'; - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($langs->trans("ThirdParties"), $showmode, DOL_URL_ROOT.'/societe/index.php?mainmenu=companies&leftmenu=', $id, $idsel, $classname, $atarget); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/societe/index.php?mainmenu=companies&leftmenu=', $langs->trans("ThirdParties"), 0, $showmode, $atarget, "companies", ''); } @@ -102,9 +102,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) $chaine.=$langs->trans("Services"); } - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($chaine, $showmode, DOL_URL_ROOT.'/product/index.php?mainmenu=products&leftmenu=', $id, $idsel, $classname, $atarget); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/product/index.php?mainmenu=products&leftmenu=', $chaine, 0, $showmode, $atarget, "products", ''); } @@ -126,9 +126,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) else $classname = 'class="tmenu"'; $idsel='commercial'; - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($langs->trans("Commercial"), $showmode, DOL_URL_ROOT.'/comm/index.php?mainmenu=commercial&leftmenu=', $id, $idsel, $classname, $atarget); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/comm/index.php?mainmenu=commercial&leftmenu=', $langs->trans("Commercial"), 0, $showmode, $atarget, "commercial", ""); } @@ -146,9 +146,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) else $classname = 'class="tmenu"'; $idsel='accountancy'; - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($langs->trans("MenuFinancial"), $showmode, DOL_URL_ROOT.'/compta/index.php?mainmenu=accountancy&leftmenu=', $id, $idsel, $classname, $atarget); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/compta/index.php?mainmenu=accountancy&leftmenu=', $langs->trans("MenuFinancial"), 0, $showmode, $atarget, "accountancy", ''); } @@ -167,9 +167,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) else $classname = 'class="tmenu"'; $idsel='bank'; - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($langs->trans("MenuBankCash"), $showmode, DOL_URL_ROOT.'/compta/bank/index.php?mainmenu=bank&leftmenu=', $id, $idsel, $classname, $atarget); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/compta/bank/index.php?mainmenu=bank&leftmenu=', $langs->trans("MenuBankCash"), 0, $showmode, $atarget, "bank", ''); } @@ -187,9 +187,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) else $classname = 'class="tmenu"'; $idsel='project'; - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($langs->trans("Projects"), $showmode, DOL_URL_ROOT.'/projet/index.php?mainmenu=project&leftmenu=', $id, $idsel, $classname, $atarget); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/projet/index.php?mainmenu=project&leftmenu=', $langs->trans("Projects"), 0, $showmode, $atarget, "project", ''); } @@ -207,9 +207,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) else $classname = 'class="tmenu"'; $idsel='tools'; - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($langs->trans("Tools"), $showmode, DOL_URL_ROOT.'/core/tools.php?mainmenu=tools&leftmenu=', $id, $idsel, $classname, $atarget); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/core/tools.php?mainmenu=tools&leftmenu=', $langs->trans("Tools"), 0, $showmode, $atarget, "tools", ''); } @@ -227,9 +227,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) else $classname = 'class="tmenu"'; $idsel='shop'; - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($langs->trans("OSCommerce"), $showmode, DOL_URL_ROOT.'/boutique/index.php?mainmenu=shop&leftmenu=', $id, $idsel, $classname, $atarget); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/boutique/index.php?mainmenu=shop&leftmenu=', $langs->trans("OSCommerce"), 0, $showmode, $atarget, "shop", ''); } @@ -245,9 +245,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) else $classname = 'class="tmenu"'; $idsel='members'; - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($langs->trans("MenuMembers"), $showmode, DOL_URL_ROOT.'/adherents/index.php?mainmenu=members&leftmenu=', $id, $idsel, $classname, $atarget); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add('/adherents/index.php?mainmenu=members&leftmenu=', $langs->trans("MenuMembers"), 0, $showmode, $atarget, "members", ''); } @@ -281,7 +281,7 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) } $url=preg_replace('/__LOGIN__/',$user->login,$url); $shorturl=preg_replace('/__LOGIN__/',$user->login,$shorturl); - + // Define the class (top menu selected or not) if (! empty($_SESSION['idmenu']) && $newTabMenu[$i]['rowid'] == $_SESSION['idmenu']) $classname='class="tmenusel"'; else if (! empty($_SESSION["mainmenu"]) && $newTabMenu[$i]['mainmenu'] == $_SESSION["mainmenu"]) $classname='class="tmenusel"'; @@ -289,9 +289,9 @@ function print_eldy_menu($db,$atarget,$type_user,&$tabMenu,&$menu,$noout=0) } else if ($showmode == 2) $classname='class="tmenu"'; - if (empty($noout)) print_start_menu_entry($idsel,$classname); + if (empty($noout)) print_start_menu_entry($idsel,$classname,$showmode); if (empty($noout)) print_text_menu_entry($newTabMenu[$i]['titre'], $showmode, $url, $id, $idsel, $classname, ($newTabMenu[$i]['target']?$newTabMenu[$i]['target']:$atarget)); - if (empty($noout)) print_end_menu_entry(); + if (empty($noout)) print_end_menu_entry($showmode); $menu->add($shorturl, $newTabMenu[$i]['titre'], 0, $showmode, ($newTabMenu[$i]['target']?$newTabMenu[$i]['target']:$atarget), ($newTabMenu[$i]['mainmenu']?$newTabMenu[$i]['mainmenu']:$newTabMenu[$i]['rowid']), ''); } @@ -315,19 +315,23 @@ function print_start_menu_array() * * @param string $idsel Text * @param string $classname String to add a css class + * @param int $showmode 0 = hide, 1 = allowed or 2 = not allowed * @return void */ -function print_start_menu_entry($idsel,$classname) +function print_start_menu_entry($idsel,$classname,$showmode) { - print ''; + if ($showmode) + { + print ''; + } print "\n"; } @@ -396,7 +404,7 @@ function print_end_menu_array() * @param array &$menu Object Menu to return back list of menu entries * @param int $noout Disable output (Initialise &$menu only). * @param string $forcemainmenu 'x'=Force mainmenu to mainmenu='x' - * @param string $forceleftmenu 'all'=Force leftmenu to '' (= all) + * @param string $forceleftmenu 'all'=Force leftmenu to '' (= all) * @return void */ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu,&$menu,$noout=0,$forcemainmenu='',$forceleftmenu='') @@ -1172,7 +1180,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu { $showmenu=true; if (! empty($conf->global->MAIN_MENU_HIDE_UNAUTHORIZED) && empty($menu_array[$i]['enabled'])) $showmenu=false; - + $alt++; if (empty($menu_array[$i]['level']) && $showmenu) { @@ -1185,7 +1193,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu print '
'."\n"; } } - + // Place tabulation $tabstring=''; $tabul=($menu_array[$i]['level'] - 1); @@ -1196,12 +1204,12 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu $tabstring.='   '; } } - + // For external modules $url = dol_buildpath($menu_array[$i]['url'], 1); - + print ''."\n"; - + // Menu niveau 0 if ($menu_array[$i]['level'] == 0) { @@ -1234,7 +1242,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu print ''."\n"; } } - + // If next is a new block or end if (empty($menu_array[$i+1]['level'])) { @@ -1244,7 +1252,7 @@ function print_left_eldy_menu($db,$menu_array_before,$menu_array_after,&$tabMenu } } } - + return count($menu_array); } diff --git a/htdocs/core/menus/standard/empty.php b/htdocs/core/menus/standard/empty.php index ab63a03ae12..2e401e3cf10 100644 --- a/htdocs/core/menus/standard/empty.php +++ b/htdocs/core/menus/standard/empty.php @@ -53,9 +53,9 @@ class MenuManager */ function loadMenu() { - - } - + + } + /** * Show menu @@ -71,17 +71,19 @@ class MenuManager require_once DOL_DOCUMENT_ROOT.'/core/class/menu.class.php'; $this->menu=new Menu(); - + if ($mode == 'top') { print_start_menu_array_empty(); + // Home + $showmode=1; $idsel='home'; $classname='class="tmenusel"'; - print_start_menu_entry_empty($idsel, $classname); + print_start_menu_entry_empty($idsel, $classname, $showmode); print_text_menu_entry_empty($langs->trans("Home"), 1, dol_buildpath('/index.php',1).'?mainmenu=home&leftmenu=', $id, $idsel, $classname, $this->atarget); - print_end_menu_entry_empty(); + print_end_menu_entry_empty($showmode); print_end_menu_array_empty(); } @@ -190,12 +192,16 @@ function print_start_menu_array_empty() * * @param string $idsel Text * @param string $classname String to add a css class + * @param int $showmode 0 = hide, 1 = allowed or 2 = not allowed * @return void */ -function print_start_menu_entry_empty($idsel,$classname) +function print_start_menu_entry_empty($idsel,$classname,$showmode) { - print ''; - print "\n"; + if ($showmode) + { + print '
'; + print "\n"; + } } /** From c5e742278e1f1592d28eebd0a549906e2fe568ea Mon Sep 17 00:00:00 2001 From: Grand Philippe Date: Sun, 24 Mar 2013 07:11:44 +0100 Subject: [PATCH 21/35] fix : trad error --- README | 2 +- README-FR | 2 +- README.md | 2 +- htdocs/admin/bank.php | 2 +- htdocs/admin/ecm.php | 2 +- htdocs/admin/mailing.php | 2 +- htdocs/admin/menus.php | 2 +- htdocs/admin/menus/index.php | 2 +- htdocs/admin/menus/other.php | 2 +- htdocs/admin/security_other.php | 4 ++-- htdocs/admin/stock.php | 2 +- htdocs/admin/taxes.php | 2 +- htdocs/comm/propal/class/propal.class.php | 2 +- htdocs/compta/facture/class/facture.class.php | 2 +- htdocs/core/lib/admin.lib.php | 2 +- htdocs/core/lib/company.lib.php | 2 +- htdocs/core/lib/cron.lib.php | 2 +- htdocs/core/lib/functions.lib.php | 2 +- htdocs/core/lib/invoice.lib.php | 2 +- htdocs/core/lib/member.lib.php | 2 +- htdocs/core/lib/price.lib.php | 2 +- htdocs/core/lib/propal.lib.php | 2 +- htdocs/fourn/class/fournisseur.commande.class.php | 2 +- htdocs/fourn/class/fournisseur.facture.class.php | 2 +- htdocs/install/check.php | 2 +- htdocs/langs/ar_SA/admin.lang | 4 ++-- htdocs/langs/ar_SA/install.lang | 2 +- htdocs/langs/ar_SA/other.lang | 2 +- htdocs/langs/bg_BG/admin.lang | 4 ++-- htdocs/langs/bg_BG/install.lang | 2 +- htdocs/langs/bg_BG/other.lang | 2 +- htdocs/langs/ca_ES/admin.lang | 4 ++-- htdocs/langs/ca_ES/install.lang | 2 +- htdocs/langs/ca_ES/other.lang | 2 +- htdocs/langs/da_DK/admin.lang | 4 ++-- htdocs/langs/da_DK/install.lang | 2 +- htdocs/langs/da_DK/other.lang | 2 +- htdocs/langs/de_AT/admin.lang | 2 +- htdocs/langs/de_AT/install.lang | 2 +- htdocs/langs/de_AT/other.lang | 2 +- htdocs/langs/de_DE/admin.lang | 4 ++-- htdocs/langs/de_DE/install.lang | 2 +- htdocs/langs/de_DE/other.lang | 2 +- htdocs/langs/el_GR/admin.lang | 2 +- htdocs/langs/el_GR/install.lang | 2 +- htdocs/langs/el_GR/other.lang | 2 +- htdocs/langs/en_US/admin.lang | 4 ++-- htdocs/langs/en_US/install.lang | 2 +- htdocs/langs/en_US/other.lang | 2 +- htdocs/langs/es_ES/admin.lang | 4 ++-- htdocs/langs/es_ES/install.lang | 2 +- htdocs/langs/es_ES/other.lang | 2 +- htdocs/langs/et_EE/admin.lang | 4 ++-- htdocs/langs/et_EE/install.lang | 2 +- htdocs/langs/et_EE/other.lang | 2 +- htdocs/langs/fa_IR/admin.lang | 2 +- htdocs/langs/fa_IR/install.lang | 2 +- htdocs/langs/fa_IR/other.lang | 2 +- htdocs/langs/fi_FI/admin.lang | 4 ++-- htdocs/langs/fi_FI/install.lang | 2 +- htdocs/langs/fi_FI/other.lang | 2 +- htdocs/langs/fr_FR/admin.lang | 4 ++-- htdocs/langs/fr_FR/install.lang | 2 +- htdocs/langs/fr_FR/other.lang | 2 +- htdocs/langs/he_IL/admin.lang | 4 ++-- htdocs/langs/he_IL/install.lang | 2 +- htdocs/langs/he_IL/other.lang | 2 +- htdocs/langs/hu_HU/admin.lang | 4 ++-- htdocs/langs/hu_HU/install.lang | 2 +- htdocs/langs/hu_HU/other.lang | 2 +- htdocs/langs/is_IS/admin.lang | 4 ++-- htdocs/langs/is_IS/install.lang | 2 +- htdocs/langs/is_IS/other.lang | 2 +- htdocs/langs/it_IT/admin.lang | 4 ++-- htdocs/langs/it_IT/install.lang | 2 +- htdocs/langs/it_IT/other.lang | 2 +- htdocs/langs/ja_JP/admin.lang | 4 ++-- htdocs/langs/ja_JP/install.lang | 2 +- htdocs/langs/ja_JP/other.lang | 2 +- htdocs/langs/nb_NO/admin.lang | 4 ++-- htdocs/langs/nb_NO/install.lang | 2 +- htdocs/langs/nb_NO/other.lang | 2 +- htdocs/langs/nl_BE/admin.lang | 4 ++-- htdocs/langs/nl_BE/install.lang | 2 +- htdocs/langs/nl_BE/other.lang | 2 +- htdocs/langs/nl_NL/admin.lang | 4 ++-- htdocs/langs/nl_NL/install.lang | 2 +- htdocs/langs/nl_NL/other.lang | 2 +- htdocs/langs/pl_PL/admin.lang | 4 ++-- htdocs/langs/pl_PL/install.lang | 4 ++-- htdocs/langs/pl_PL/other.lang | 2 +- htdocs/langs/pt_BR/admin.lang | 2 +- htdocs/langs/pt_BR/install.lang | 2 +- htdocs/langs/pt_BR/other.lang | 2 +- htdocs/langs/pt_PT/admin.lang | 4 ++-- htdocs/langs/pt_PT/install.lang | 2 +- htdocs/langs/pt_PT/other.lang | 2 +- htdocs/langs/ro_RO/admin.lang | 4 ++-- htdocs/langs/ro_RO/install.lang | 4 ++-- htdocs/langs/ro_RO/other.lang | 2 +- htdocs/langs/ru_RU/admin.lang | 4 ++-- htdocs/langs/ru_RU/install.lang | 4 ++-- htdocs/langs/ru_RU/other.lang | 2 +- htdocs/langs/ru_UA/install.lang | 2 +- htdocs/langs/sl_SI/admin.lang | 4 ++-- htdocs/langs/sl_SI/install.lang | 2 +- htdocs/langs/sl_SI/other.lang | 2 +- htdocs/langs/sv_SE/admin.lang | 4 ++-- htdocs/langs/sv_SE/install.lang | 2 +- htdocs/langs/sv_SE/other.lang | 2 +- htdocs/langs/tr_TR/admin.lang | 4 ++-- htdocs/langs/tr_TR/install.lang | 2 +- htdocs/langs/tr_TR/other.lang | 2 +- htdocs/langs/zh_CN/admin.lang | 4 ++-- htdocs/langs/zh_CN/install.lang | 2 +- htdocs/langs/zh_CN/other.lang | 2 +- htdocs/langs/zh_TW/admin.lang | 4 ++-- htdocs/langs/zh_TW/install.lang | 2 +- htdocs/langs/zh_TW/other.lang | 2 +- 119 files changed, 150 insertions(+), 150 deletions(-) diff --git a/README b/README index ad883d9aa57..2b320d665c1 100644 --- a/README +++ b/README @@ -107,7 +107,7 @@ Other modules: - ClickToDial phone numbers - RSS -Miscellanous: +Miscellaneous: - Multi-user, with several permissions levels for each feature. - Serveral menu managers (can be used by internal users, as a back-office, with a particular menu, or by external users, as a front-office, with diff --git a/README-FR b/README-FR index 6988f3f263d..ac3a9ae2d8c 100644 --- a/README-FR +++ b/README-FR @@ -106,7 +106,7 @@ Autres modules: - Export PDF de tous les éléments (factures, propositions commerciales, commandes, bons expéditions, etc...) - De nombreuses autres fonctionnalités issues de modules officiels ou non (AWStats, Bittorrent, Gravatar, Google, Webcalendar...) -Miscellanous: +Divers: - Application multi-utilisateurs avec différents niveaux de permissions par module. - Plusieurs gestionnaires de menus (possibilité de différencier les menus pour les utilisateurs internes ou externes comme les clients ou fournisseurs). - Application simple à utiliser. diff --git a/README.md b/README.md index 0a8be8fd8fa..e3d86854a70 100644 --- a/README.md +++ b/README.md @@ -103,7 +103,7 @@ See ChangeLog file found into package. - ClickToDial phone numbers - RSS -### Miscellanous: +### Miscellaneous: - Multi-user, with several permissions levels for each feature. - Serveral menu managers (can be used by internal users, as a back-office, with a particular menu, or by external users, as a front-office, with another menu and permissions). diff --git a/htdocs/admin/bank.php b/htdocs/admin/bank.php index 98a08708dff..6ba81a5cbee 100644 --- a/htdocs/admin/bank.php +++ b/htdocs/admin/bank.php @@ -91,7 +91,7 @@ print '
'; $h = 0; $head[$h][0] = DOL_URL_ROOT."/admin/bank.php"; -$head[$h][1] = $langs->trans("Miscellanous"); +$head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'general'; $hselected=$h; $h++; diff --git a/htdocs/admin/ecm.php b/htdocs/admin/ecm.php index 45a142d8190..68782a2620d 100644 --- a/htdocs/admin/ecm.php +++ b/htdocs/admin/ecm.php @@ -75,7 +75,7 @@ print '
'; $h = 0; $head[$h][0] = DOL_URL_ROOT."/admin/ecm.php"; -$head[$h][1] = $langs->trans("Miscellanous"); +$head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'general'; $hselected=$h; $h++; diff --git a/htdocs/admin/mailing.php b/htdocs/admin/mailing.php index 87252252d65..6074272ddc8 100644 --- a/htdocs/admin/mailing.php +++ b/htdocs/admin/mailing.php @@ -106,7 +106,7 @@ print_fiche_titre($langs->trans("MailingSetup"),$linkback,'setup'); $h = 0; $head[$h][0] = DOL_URL_ROOT."/admin/mailing.php"; -$head[$h][1] = $langs->trans("Miscellanous"); +$head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'general'; $hselected=$h; $h++; diff --git a/htdocs/admin/menus.php b/htdocs/admin/menus.php index 64f063121fe..bd5074f01b1 100644 --- a/htdocs/admin/menus.php +++ b/htdocs/admin/menus.php @@ -149,7 +149,7 @@ $head[$h][2] = 'editor'; $h++; $head[$h][0] = DOL_URL_ROOT."/admin/menus/other.php"; -$head[$h][1] = $langs->trans("Miscellanous"); +$head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'misc'; $h++; diff --git a/htdocs/admin/menus/index.php b/htdocs/admin/menus/index.php index cfe8fae2ddd..092e910c5cc 100644 --- a/htdocs/admin/menus/index.php +++ b/htdocs/admin/menus/index.php @@ -232,7 +232,7 @@ $head[$h][2] = 'editor'; $h++; $head[$h][0] = DOL_URL_ROOT."/admin/menus/other.php"; -$head[$h][1] = $langs->trans("Miscellanous"); +$head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'misc'; $h++; diff --git a/htdocs/admin/menus/other.php b/htdocs/admin/menus/other.php index 6f9269919d5..0ec3119c097 100644 --- a/htdocs/admin/menus/other.php +++ b/htdocs/admin/menus/other.php @@ -87,7 +87,7 @@ $head[$h][2] = 'editor'; $h++; $head[$h][0] = DOL_URL_ROOT."/admin/menus/other.php"; -$head[$h][1] = $langs->trans("Miscellanous"); +$head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'misc'; $h++; diff --git a/htdocs/admin/security_other.php b/htdocs/admin/security_other.php index 13c87d88bf7..f24a63ba76e 100644 --- a/htdocs/admin/security_other.php +++ b/htdocs/admin/security_other.php @@ -123,11 +123,11 @@ else if ($action == 'delete') $form = new Form($db); -llxHeader('',$langs->trans("Miscellanous")); +llxHeader('',$langs->trans("Miscellaneous")); print_fiche_titre($langs->trans("SecuritySetup"),'','setup'); -print $langs->trans("MiscellanousDesc")."
\n"; +print $langs->trans("MiscellaneousDesc")."
\n"; print "
\n"; $head=security_prepare_head(); diff --git a/htdocs/admin/stock.php b/htdocs/admin/stock.php index ba28ea15635..bbdbf3276db 100644 --- a/htdocs/admin/stock.php +++ b/htdocs/admin/stock.php @@ -101,7 +101,7 @@ print '
'; $h = 0; $head[$h][0] = DOL_URL_ROOT."/admin/stock.php"; -$head[$h][1] = $langs->trans("Miscellanous"); +$head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'general'; $hselected=$h; $h++; diff --git a/htdocs/admin/taxes.php b/htdocs/admin/taxes.php index 8e547bd4e21..c5d19eb9109 100644 --- a/htdocs/admin/taxes.php +++ b/htdocs/admin/taxes.php @@ -126,7 +126,7 @@ print '
'; $h = 0; $head[$h][0] = DOL_URL_ROOT."/admin/taxes.php"; -$head[$h][1] = $langs->trans("Miscellanous"); +$head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'general'; $hselected=$h; $h++; diff --git a/htdocs/comm/propal/class/propal.class.php b/htdocs/comm/propal/class/propal.class.php index 66f6bb3874d..4545d4cd0ac 100644 --- a/htdocs/comm/propal/class/propal.class.php +++ b/htdocs/comm/propal/class/propal.class.php @@ -456,7 +456,7 @@ class Propal extends CommonObject * @param double $txlocaltax2 Local tax 2 rate * @param string $desc Description * @param double $price_base_type HT ou TTC - * @param int $info_bits Miscellanous informations + * @param int $info_bits Miscellaneous informations * @param int $special_code Special code (also used by externals modules!) * @param int $fk_parent_line Id of parent line (0 in most cases, used by modules adding sublevels into lines). * @param int $skip_update_total Keep fields total_xxx to 0 (used for special lines by some modules) diff --git a/htdocs/compta/facture/class/facture.class.php b/htdocs/compta/facture/class/facture.class.php index 38995fdebb9..3b38ccb3fd0 100644 --- a/htdocs/compta/facture/class/facture.class.php +++ b/htdocs/compta/facture/class/facture.class.php @@ -2086,7 +2086,7 @@ class Facture extends CommonInvoice * @param double $txlocaltax1 Local tax 1 rate * @param double $txlocaltax2 Local tax 2 rate * @param string $price_base_type HT or TTC - * @param int $info_bits Miscellanous informations + * @param int $info_bits Miscellaneous informations * @param int $type Type of line (0=product, 1=service) * @param int $fk_parent_line Id of parent line (0 in most cases, used by modules adding sublevels into lines). * @param int $skip_update_total Keep fields total_xxx to 0 (used for special lines by some modules) diff --git a/htdocs/core/lib/admin.lib.php b/htdocs/core/lib/admin.lib.php index 85218aaee58..978f0896f65 100644 --- a/htdocs/core/lib/admin.lib.php +++ b/htdocs/core/lib/admin.lib.php @@ -519,7 +519,7 @@ function security_prepare_head() $h++; $head[$h][0] = DOL_URL_ROOT."/admin/security_other.php"; - $head[$h][1] = $langs->trans("Miscellanous"); + $head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'misc'; $h++; diff --git a/htdocs/core/lib/company.lib.php b/htdocs/core/lib/company.lib.php index f06e8027e5f..b7d012cc51a 100644 --- a/htdocs/core/lib/company.lib.php +++ b/htdocs/core/lib/company.lib.php @@ -180,7 +180,7 @@ function societe_admin_prepare_head($object) $head = array(); $head[$h][0] = DOL_URL_ROOT.'/societe/admin/societe.php'; - $head[$h][1] = $langs->trans("Miscellanous"); + $head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'general'; $h++; diff --git a/htdocs/core/lib/cron.lib.php b/htdocs/core/lib/cron.lib.php index 7ba1e7b38a3..0ba077e1a3b 100644 --- a/htdocs/core/lib/cron.lib.php +++ b/htdocs/core/lib/cron.lib.php @@ -34,7 +34,7 @@ function cronadmin_prepare_head() $head = array(); $head[$h][0] = dol_buildpath('/cron/admin/cron.php', 1); - $head[$h][1] = $langs->trans("Miscellanous"); + $head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'setup'; $h++; diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php index 22e4892af5f..835e5a36ee1 100644 --- a/htdocs/core/lib/functions.lib.php +++ b/htdocs/core/lib/functions.lib.php @@ -2529,7 +2529,7 @@ function print_fleche_navigation($page,$file,$options='',$nextpage=0,$betweenarr * * @param float $rate Rate value to format (19.6 19,6 19.6% 19,6%,...) * @param boolean $addpercent Add a percent % sign in output - * @param int $info_bits Miscellanous information on vat (0=Default, 1=French NPR vat) + * @param int $info_bits Miscellaneous information on vat (0=Default, 1=French NPR vat) * @param int $usestarfornpr 1=Use '*' for NPR vat rate intead of MAIN_LABEL_MENTION_NPR * @return string String with formated amounts (19,6 or 19,6% or 8.5% NPR or 8.5% *) */ diff --git a/htdocs/core/lib/invoice.lib.php b/htdocs/core/lib/invoice.lib.php index 03b8fa7240d..b0d564c88d5 100644 --- a/htdocs/core/lib/invoice.lib.php +++ b/htdocs/core/lib/invoice.lib.php @@ -112,7 +112,7 @@ function invoice_admin_prepare_head($object) $head = array(); $head[$h][0] = DOL_URL_ROOT.'/admin/facture.php'; - $head[$h][1] = $langs->trans("Miscellanous"); + $head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'general'; $h++; diff --git a/htdocs/core/lib/member.lib.php b/htdocs/core/lib/member.lib.php index e4ff07210e8..8ec1fdd4070 100644 --- a/htdocs/core/lib/member.lib.php +++ b/htdocs/core/lib/member.lib.php @@ -116,7 +116,7 @@ function member_admin_prepare_head() $head = array(); $head[$h][0] = DOL_URL_ROOT.'/adherents/admin/adherent.php'; - $head[$h][1] = $langs->trans("Miscellanous"); + $head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'general'; $h++; diff --git a/htdocs/core/lib/price.lib.php b/htdocs/core/lib/price.lib.php index 06b71377c1c..c3af3e2e973 100644 --- a/htdocs/core/lib/price.lib.php +++ b/htdocs/core/lib/price.lib.php @@ -43,7 +43,7 @@ * @param float $uselocaltax2_rate 0=do not use this localtax, >0=apply, -1=autodetect according to seller * @param float $remise_percent_global 0 * @param string $price_base_type HT=on calcule sur le HT, TTC=on calcule sur le TTC - * @param int $info_bits Miscellanous informations on line + * @param int $info_bits Miscellaneous informations on line * @param int $type 0/1=Product/service * @param string $seller Thirdparty seller (we need $seller->country_code property). Provided only if seller is the supplier. * @return result[ 0=total_ht, diff --git a/htdocs/core/lib/propal.lib.php b/htdocs/core/lib/propal.lib.php index d6348bdcb0e..5d65032e421 100644 --- a/htdocs/core/lib/propal.lib.php +++ b/htdocs/core/lib/propal.lib.php @@ -117,7 +117,7 @@ function propal_admin_prepare_head($object) $head = array(); $head[$h][0] = DOL_URL_ROOT.'/admin/propal.php'; - $head[$h][1] = $langs->trans("Miscellanous"); + $head[$h][1] = $langs->trans("Miscellaneous"); $head[$h][2] = 'general'; $h++; diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php index b74511f1419..d8487fc82b0 100644 --- a/htdocs/fourn/class/fournisseur.commande.class.php +++ b/htdocs/fourn/class/fournisseur.commande.class.php @@ -1702,7 +1702,7 @@ class CommandeFournisseur extends CommonOrder * @param double $txlocaltax1 Localtax1 tax * @param double $txlocaltax2 Localtax2 tax * @param double $price_base_type Type of price base - * @param int $info_bits Miscellanous informations + * @param int $info_bits Miscellaneous informations * @param int $type Type of line (0=product, 1=service) * @param int $notrigger Disable triggers * @return int < 0 if error, > 0 if ok diff --git a/htdocs/fourn/class/fournisseur.facture.class.php b/htdocs/fourn/class/fournisseur.facture.class.php index cd106c3a120..60bdf26a8ab 100644 --- a/htdocs/fourn/class/fournisseur.facture.class.php +++ b/htdocs/fourn/class/fournisseur.facture.class.php @@ -1065,7 +1065,7 @@ class FactureFournisseur extends CommonInvoice * @param double $qty Quantity * @param int $idproduct Id produit * @param double $price_base_type HT or TTC - * @param int $info_bits Miscellanous informations of line + * @param int $info_bits Miscellaneous informations of line * @param int $type Type of line (0=product, 1=service) * @param double $remise_percent Pourcentage de remise de la ligne * @param int $notrigger Disable triggers diff --git a/htdocs/install/check.php b/htdocs/install/check.php index 5bd17604b9e..f0bda08bfc1 100644 --- a/htdocs/install/check.php +++ b/htdocs/install/check.php @@ -55,7 +55,7 @@ pHeader('',''); // No next step for navigation buttons. Next step is defined //print "
\n"; //print $langs->trans("InstallEasy")."

\n"; -print ''.$langs->trans("MiscellanousChecks").":
\n"; +print ''.$langs->trans("MiscellaneousChecks").":
\n"; // Check browser $useragent=$_SERVER['HTTP_USER_AGENT']; diff --git a/htdocs/langs/ar_SA/admin.lang b/htdocs/langs/ar_SA/admin.lang index 722231818d2..148055a3139 100644 --- a/htdocs/langs/ar_SA/admin.lang +++ b/htdocs/langs/ar_SA/admin.lang @@ -669,7 +669,7 @@ GeneratedPasswordDesc=هنا تعريف القاعدة التي تريد است DictionnaryDesc=تعرف هنا إشارة datas. يمكنك استكمال مسبقا مع قيمة لك. ConstDesc=تسمح لك هذه الصفحة لتحرير جميع البارامترات الأخرى غير المتوفرة في الصفحات السابقة. فهي محفوظة لمعايير متقدمة للمطورين أو troubleshouting. OnceSetupFinishedCreateUsers=تحذير فأنت Dolibarr مدير المستخدم. مدير المستخدمين تستخدم لإعداد Dolibarr. لالمعتاد استخدام Dolibarr ، يوصى باستخدام غير مستخدم مدير خلق مجموعات من المستخدمين & القائمة. -MiscellanousDesc=هنا تعريف جميع البارامترات الأخرى ذات الصلة بالأمن. +MiscellaneousDesc=هنا تعريف جميع البارامترات الأخرى ذات الصلة بالأمن. LimitsSetup=حدود / الدقيقة الإعداد LimitsDesc=يمكنك تحديد الحدود ، وoptimisations الايضاحات التي تستخدمها Dolibarr هنا MAIN_MAX_DECIMALS_UNIT=ماكس عشرية لأسعار الوحدات @@ -1268,7 +1268,7 @@ SendmailOptionMayHurtBuggedMTA=وميزة لإرسال رسائل باستخدا ModuleCompanyCodeAquarium=عودة رمز المحاسبة التي بناها:
يتبع %s بواسطة طرف ثالث رمز المورد عن مورد قانون المحاسبة،
يتبع %s بواسطة طرف ثالث رمز العملاء لعميل قانون المحاسبة. CompanyIdProfChecker=المهنية معرف فريد MustBeUnique=يجب أن تكون فريدة من نوعها؟ -Miscellanous=متفرقات +Miscellaneous=متفرقات ContractsSetup=عقود وحدة الإعداد ContractsNumberingModules=عقود ترقيم الوحدات AdherentLoginRequired=إدارة تسجيل الدخول لكل عضو diff --git a/htdocs/langs/ar_SA/install.lang b/htdocs/langs/ar_SA/install.lang index 57d561e631d..69a9dfc2c4d 100644 --- a/htdocs/langs/ar_SA/install.lang +++ b/htdocs/langs/ar_SA/install.lang @@ -10,7 +10,7 @@ // Reference language: en_US CHARSET=UTF-8 InstallEasy=فقط اتبع التعليمات خطوة بخطوة. -MiscellanousChecks=التحقق من الشروط الأساسية +MiscellaneousChecks=التحقق من الشروط الأساسية DolibarrWelcome=مرحبا بكم في Dolibarr ConfFileExists=ملفات موجودة ٪ ق. ConfFileDoesNotExists=ملفات ل ٪ لا وجود له! diff --git a/htdocs/langs/ar_SA/other.lang b/htdocs/langs/ar_SA/other.lang index 4c419afc905..d32680de008 100644 --- a/htdocs/langs/ar_SA/other.lang +++ b/htdocs/langs/ar_SA/other.lang @@ -44,7 +44,7 @@ TotalSizeOfAttachedFiles=اجمالى حجم الملفات المرفقة / و MaxSize=الحجم الأقصى AttachANewFile=إرفاق ملف جديد / وثيقة LinkedObject=ربط وجوه -Miscellanous=متفرقات +Miscellaneous=متفرقات NbOfActiveNotifications=عدد الإخطارات WarningInstallDirExists=تحذير تركيب دليل (٪) لا تزال موجودة. هذه هي ثغرة أمنية خطيرة. يجب عليك إزالة عليه في أقرب وقت ممكن. WarningUntilDirRemoved=هذا التحذير وسوف تظل نشطة ما دام هذا الدليل هو هذا (يظهر فقط لمستخدمي المشرف). diff --git a/htdocs/langs/bg_BG/admin.lang b/htdocs/langs/bg_BG/admin.lang index 812767e5ab4..5a181549062 100644 --- a/htdocs/langs/bg_BG/admin.lang +++ b/htdocs/langs/bg_BG/admin.lang @@ -842,7 +842,7 @@ GeneratedPasswordDesc=Определете тук правилото, което DictionnaryDesc=Определете тук всички референтни презареждане на данните. Можете да попълните предварително зададена стойност с вашите. ConstDesc=Тази страница ви позволява да редактирате всички останали параметри не са налични в предишните страници. Те са запазени параметрите за напреднали разработчиците или за troubleshouting. OnceSetupFinishedCreateUsers=Внимание, вие сте на потребителя администратор Dolibarr. Администратор потребители не се използват да настроите Dolibarr. За обичайна употреба на Dolibarr, се препоръчва да използвате не потребителски администратора, създаден от Потребители и групи менюто. -MiscellanousDesc=Определете тук всички други параметри, свързани със сигурността. +MiscellaneousDesc=Определете тук всички други параметри, свързани със сигурността. LimitsSetup=Граници / Прецизно настройване LimitsDesc=Можете да дефинирате ограничения, уточнения и оптимизации, използвани от Dolibarr тук MAIN_MAX_DECIMALS_UNIT=Макс знака след десетичната запетая за единичните цени @@ -923,7 +923,7 @@ DocumentModelOdt=Генериране на документи от OpenDocuments WatermarkOnDraft=Воден знак върху проект на документ CompanyIdProfChecker=Професионална Id уникален MustBeUnique=Трябва да е уникален? -Miscellanous=Разни +Miscellaneous=Разни WebCalSetup=Настройка webcalendar връзка WebCalSyncro=Да Добавяне на Dolibarr събития да WebCalendar WebCalAllways=Винаги, не иска diff --git a/htdocs/langs/bg_BG/install.lang b/htdocs/langs/bg_BG/install.lang index aa18691f409..3e720835f7f 100644 --- a/htdocs/langs/bg_BG/install.lang +++ b/htdocs/langs/bg_BG/install.lang @@ -9,7 +9,7 @@ // Reference language: en_US -> bg_BG CHARSET=UTF-8 InstallEasy=Просто следвайте инструкциите стъпка по стъпка. -MiscellanousChecks=Предпоставки проверка +MiscellaneousChecks=Предпоставки проверка DolibarrWelcome=Добре дошли в Dolibarr ConfFileExists=%s конфигурационен файл съществува. ConfFileDoesNotExists=%s конфигурационен файл не съществува! diff --git a/htdocs/langs/bg_BG/other.lang b/htdocs/langs/bg_BG/other.lang index a38a46300a2..08664887076 100644 --- a/htdocs/langs/bg_BG/other.lang +++ b/htdocs/langs/bg_BG/other.lang @@ -52,7 +52,7 @@ TotalSizeOfAttachedFiles=Общ размер на прикачените фай MaxSize=Максимален размер AttachANewFile=Прикрепете нов файл / документ LinkedObject=Свързан обект -Miscellanous=Разни +Miscellaneous=Разни NbOfActiveNotifications=Броят на нотификациите PredefinedMailTest=Това е тест поща. \ NПромените две линии са разделени с нов ред. \n\n __ SIGNATURE__ PredefinedMailTestHtml=Това е тест поща (тест дума трябва да бъде с удебелен шрифт).
Двете линии са разделени от връщане на каретката.

__SIGNATURE__ diff --git a/htdocs/langs/ca_ES/admin.lang b/htdocs/langs/ca_ES/admin.lang index de095a8ff62..f0e24d649bd 100644 --- a/htdocs/langs/ca_ES/admin.lang +++ b/htdocs/langs/ca_ES/admin.lang @@ -890,7 +890,7 @@ GeneratedPasswordDesc=Indiqui aquí que norma vol utilitzar per generar les cont DictionnaryDesc=Indiqui aquí les dades de referència. Pot completar/modificar les dades predefinides amb les seves ConstDesc=Qualsevol altre paràmetre no editable en les pàgines anteriors OnceSetupFinishedCreateUsers=Atenció, està sota un compte d'administrador de Dolibarr. Els administradors s'utilitzen per configurar Dolibarr. Per a un ús corrent de Dolibarr, es recomana utilitzar un compte no administrador creada des del menú "Usuaris i grups" -MiscellanousDesc=Definiu aquí els altres paràmetres relacionats amb la seguretat. +MiscellaneousDesc=Definiu aquí els altres paràmetres relacionats amb la seguretat. LimitsSetup=Configuració de límits i precisions LimitsDesc=Podeu definir aquí els límits i precisions utilitzats per Dolibarr MAIN_MAX_DECIMALS_UNIT=Decimals màxims per als preus unitaris @@ -982,7 +982,7 @@ CompanyIdProfChecker=Règles sobre els ID professionals MustBeUnique=Ha de ser únic? MustBeMandatory=Ha de ser obligatori per a crear tercers? MustBeInvoiceMandatory=Ha de ser obligatori per a validar factures? -Miscellanous=Miscel·lània +Miscellaneous=Miscel·lània ##### Webcal setup ##### WebCalSetup=Configuració d'enllaç amb el calendari webcalendar WebCalSyncro=Integrar els esdeveniments Dolibarr a webcalendar diff --git a/htdocs/langs/ca_ES/install.lang b/htdocs/langs/ca_ES/install.lang index b37e2c114c5..6cc42fd7674 100644 --- a/htdocs/langs/ca_ES/install.lang +++ b/htdocs/langs/ca_ES/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - ca_ES - install CHARSET=UTF-8 InstallEasy=Hem procurat que la instal·lació sigui el més simple possible, vostè només ha de seguir els passos un a un. -MiscellanousChecks=Comprovació dels Prerequisits +MiscellaneousChecks=Comprovació dels Prerequisits DolibarrWelcome=Benvingut a Dolibarr ConfFileExists=L'arxiu de configuració %s existeix. ConfFileDoesNotExists=El fitxer de configuració %s no existeix! diff --git a/htdocs/langs/ca_ES/other.lang b/htdocs/langs/ca_ES/other.lang index 04e0a957cf6..ae3011ed7f5 100644 --- a/htdocs/langs/ca_ES/other.lang +++ b/htdocs/langs/ca_ES/other.lang @@ -44,7 +44,7 @@ TotalSizeOfAttachedFiles=Mida total dels arxius/documents adjunts MaxSize=Tamany màxim AttachANewFile=Adjuntar nou arxiu/document LinkedObject=Objecte adjuntat -Miscellanous=Diversos +Miscellaneous=Diversos NbOfActiveNotifications=Número notificacions PredefinedMailTest=Això és un correu de prova.\nLes 2 línies estan separades per un retorn de carro a la línia. PredefinedMailTestHtml=Això és un e-mail de prova (la paraula prova ha d'estar en negreta).
Les 2 línies estan separades per un retorn de carro en la línia diff --git a/htdocs/langs/da_DK/admin.lang b/htdocs/langs/da_DK/admin.lang index 5dc84bdef04..c48977e64aa 100644 --- a/htdocs/langs/da_DK/admin.lang +++ b/htdocs/langs/da_DK/admin.lang @@ -599,7 +599,7 @@ GeneratedPasswordDesc=Definer her som regel, du vil bruge til at generere nye ad DictionnaryDesc=Definer her alle reference oplysningerne. Du kan færdiggøre foruddefineret værdi med dine. ConstDesc=Denne side giver dig mulighed for at redigere alle andre parametre, som ikke findes i de foregående sider. De er forbeholdt parametre for avancerede udviklere eller for troubleshouting. OnceSetupFinishedCreateUsers=Advarsel, du er en Dolibarr administrator bruger. Administrator brugere er vant til opsætningen Dolibarr. For en almindelig brug af Dolibarr, anbefales det at bruge en ikke administrator bruger oprettet fra Brugere & Grupper menuen. -MiscellanousDesc=Definer her alle andre parametre med relation til sikkerhed. +MiscellaneousDesc=Definer her alle andre parametre med relation til sikkerhed. LimitsSetup=Grænseværdier / Precision setup LimitsDesc=Du kan definere grænser, præciseringer og optimeringer bruges af Dolibarr her MAIN_MAX_DECIMALS_UNIT=Max decimaler for enhedspriser @@ -1271,7 +1271,7 @@ SendmailOptionNotComplete=Advarsel, på nogle Linux-systemer, for at sende e-mai SendmailOptionMayHurtBuggedMTA=Feature til at sende mails ved hjælp af metoden "PHP mail direkte" vil generere en mail, der måske ikke korrekt fortolket af nogle modtager mail-servere. Resultatet er, at nogle mails ikke kan læses af personer, der hostes af thoose aflyttet platforme. Det er tilfældet for nogle Internet-udbydere (Ex: Orange i Frankrig). Dette er ikke et problem i Dolibarr eller ind i PHP, men på at modtage e-mail-server. Du kan dog tilføje muligheden MAIN_FIX_FOR_BUGGED_MTA til 1 i setup - andet at ændre Dolibarr at undgå dette. Dog kan du opleve problemer med andre servere, nøje at overholde SMTP standard. Den anden løsning (monteringstid) er at bruge metoden "SMTP socket bibliotek", der ikke har nogen ulemper. CompanyIdProfChecker=Professionel Id unikke MustBeUnique=Skal være unik? -Miscellanous=Diverse +Miscellaneous=Diverse ContractsSetup=Kontrakter modul opsætning ContractsNumberingModules=Kontrakter nummerering moduler AdherentLoginRequired=Administrere et login for hvert medlem diff --git a/htdocs/langs/da_DK/install.lang b/htdocs/langs/da_DK/install.lang index 8bd455e6cee..2c2c2e566bb 100644 --- a/htdocs/langs/da_DK/install.lang +++ b/htdocs/langs/da_DK/install.lang @@ -12,7 +12,7 @@ // Reference language: en_US CHARSET=UTF-8 InstallEasy=Vi forsøgte at gøre Dolibarr setup så let som muligt. Følg anvisningerne trin for trin. -MiscellanousChecks=Forudsætninger check +MiscellaneousChecks=Forudsætninger check DolibarrWelcome=Velkommen til Dolibarr ConfFileExists=Konfigurationsfil %s eksisterer. ConfFileDoesNotExists=Konfigurationsfil %s eksisterer ikke! diff --git a/htdocs/langs/da_DK/other.lang b/htdocs/langs/da_DK/other.lang index 5aee3d71a07..32826b83cea 100644 --- a/htdocs/langs/da_DK/other.lang +++ b/htdocs/langs/da_DK/other.lang @@ -25,7 +25,7 @@ TotalSizeOfAttachedFiles=Samlede størrelse på vedhæftede filer / dokumenter MaxSize=Maksimumstørrelse AttachANewFile=Vedhæfte en ny fil / dokument LinkedObject=Forbundet objekt -Miscellanous=Miscellaneous +Miscellaneous=Miscellaneous NbOfActiveNotifications=Antal anmeldelser ChooseYourDemoProfil=Vælg den demo profil, der passer til din virksomhed ... DemoCompanyShopWithCashDesk=Administrer en butik med et kontant desk diff --git a/htdocs/langs/de_AT/admin.lang b/htdocs/langs/de_AT/admin.lang index 50b20c94796..fa932d55014 100644 --- a/htdocs/langs/de_AT/admin.lang +++ b/htdocs/langs/de_AT/admin.lang @@ -594,7 +594,7 @@ GeneratedPasswordDesc=Definieren Sie hier das Schema nach dem automatisch generi DictionnaryDesc=Definieren Sie hier alle Referenzwerte. Sie können vordefinierte Werte mit ihren eigenen ergänzen. ConstDesc=Auf dieser Seite können Sie alle, auf bisherigen Seiten nicht aufgeführte, Parameter einstellen. Dieser Bereich ist primär für fortgeschrittene Entwickler und zur Fehlersuche gedacht. OnceSetupFinishedCreateUsers=Achtung: Sie sind derzeit als Systemadministrator angemeldet. Administratorenkonten dienen primär zur Einrichtung des Systems, für die reguläre Verwendung sollten Sie ein herkömmliches Benutzerkonto unter 'Benutzer&Gruppen' anlegen und verwenden. -MiscellanousDesc=Definieren Sie hier alle sonstigen Sicherheitseinstellungen +MiscellaneousDesc=Definieren Sie hier alle sonstigen Sicherheitseinstellungen LimitsSetup=Grenzwerte-/Genauigkeitseinstellungen LimitsDesc=Hier können Sie Grenzwerte, Genauigkeitseinstellungen und das Rundungsverhalten einstellen. MAIN_MAX_DECIMALS_UNIT=Dezimalstellen max. für Stückpreise diff --git a/htdocs/langs/de_AT/install.lang b/htdocs/langs/de_AT/install.lang index 765d366a219..d018b25e09d 100644 --- a/htdocs/langs/de_AT/install.lang +++ b/htdocs/langs/de_AT/install.lang @@ -7,7 +7,7 @@ CHARSET=UTF-8 InstallEasy=Wir haben uns bemüht, die Installation von dolibarr so einfach wie möglich zu gestalten. Folgen Sie einfach Schritt für Schritt den Anweisungen auf dem Bildschirm. -MiscellanousChecks=Systemvoraussetzungen prüfen +MiscellaneousChecks=Systemvoraussetzungen prüfen DolibarrWelcome=Willkommen bei dolibarr ConfFileExists=Die Konfigurationsdatei %s ist vorhanden. ConfFileDoesNotExists=Die Konfigurationsdatei %s existiert nicht! diff --git a/htdocs/langs/de_AT/other.lang b/htdocs/langs/de_AT/other.lang index ff3481857d3..b2771c7aede 100644 --- a/htdocs/langs/de_AT/other.lang +++ b/htdocs/langs/de_AT/other.lang @@ -20,7 +20,7 @@ TotalSizeOfAttachedFiles=Gesamtgröße der angehängten Dateien/Dokumente MaxSize=Maximalgröße AttachANewFile=Neue Datei/Dokument anhängen LinkedObject=Verknüpftes Objekt -Miscellanous=Verschiedenes +Miscellaneous=Verschiedenes NbOfActiveNotifications=Anzahl aktiver Benachrichtigungen PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Bitte entnehmen Sie dem Anhang die Rechnung __FACREF__\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Bedauerlicherweise scheint die Rechnung __FACREF__ bislang unbeglichen. Als Erinnerung übersenden wir Ihnen diese nochmals im Anhang\n\n__PERSONALIZED__Mit freundlichen Grüßen\n\n__SIGNATURE__ diff --git a/htdocs/langs/de_DE/admin.lang b/htdocs/langs/de_DE/admin.lang index 7c56963166b..72f7f060e06 100644 --- a/htdocs/langs/de_DE/admin.lang +++ b/htdocs/langs/de_DE/admin.lang @@ -815,7 +815,7 @@ GeneratedPasswordDesc=Definieren Sie hier das Schema nach dem automatisch generi DictionnaryDesc=Definieren Sie hier alle Referenzwerte. Sie können vordefinierte Werte mit ihren eigenen ergänzen. ConstDesc=Auf dieser Seite können Sie alle, auf bisherigen Seiten nicht aufgeführte, Parameter einstellen. Dieser Bereich ist primär für fortgeschrittene Entwickler und zur Fehlersuche gedacht. OnceSetupFinishedCreateUsers=Achtung: Sie sind derzeit als Systemadministrator angemeldet. Administratorenkonten dienen primär zur Einrichtung des Systems, für die reguläre Verwendung sollten Sie ein herkömmliches Benutzerkonto unter 'Benutzer&Gruppen' anlegen und verwenden. -MiscellanousDesc=Definieren Sie hier alle sonstigen Sicherheitseinstellungen +MiscellaneousDesc=Definieren Sie hier alle sonstigen Sicherheitseinstellungen LimitsSetup=Grenzwerte-/Genauigkeitseinstellungen LimitsDesc=Hier können Sie Grenzwerte, Genauigkeitseinstellungen und das Rundungsverhalten einstellen. MAIN_MAX_DECIMALS_UNIT=Dezimalstellen max. für Stückpreise @@ -895,7 +895,7 @@ DocumentModelOdt=Erstellen von Dokumentvorlagen im OpenDocuments-Format (.odt-Da WatermarkOnDraft=Wasserzeichen auf Entwurf CompanyIdProfChecker=Berufs-Identifikation einzigartige MustBeUnique=Eindeutig sein müssen? -Miscellanous=Verschiedenes +Miscellaneous=Verschiedenes ##### Webcal setup ##### WebCalSetup=Webkalender-Verbindungseinstellungen WebCalSyncro=Termine an Webkalender übertragen diff --git a/htdocs/langs/de_DE/install.lang b/htdocs/langs/de_DE/install.lang index f7e0ae7654d..c185d289129 100644 --- a/htdocs/langs/de_DE/install.lang +++ b/htdocs/langs/de_DE/install.lang @@ -8,7 +8,7 @@ CHARSET=UTF-8 InstallEasy=Wir haben uns bemüht, die Installation von dolibarr so einfach wie möglich zu gestalten. Folgen Sie einfach Schritt für Schritt den Anweisungen auf dem Bildschirm. -MiscellanousChecks=Systemvoraussetzungen prüfen +MiscellaneousChecks=Systemvoraussetzungen prüfen DolibarrWelcome=Willkommen bei dolibarr ConfFileExists=Die Konfigurationsdatei %s ist vorhanden. ConfFileDoesNotExists=Die Konfigurationsdatei %s existiert nicht! diff --git a/htdocs/langs/de_DE/other.lang b/htdocs/langs/de_DE/other.lang index a8a8e18ae63..92dba590db1 100644 --- a/htdocs/langs/de_DE/other.lang +++ b/htdocs/langs/de_DE/other.lang @@ -51,7 +51,7 @@ TotalSizeOfAttachedFiles=Gesamtgröße der angehängten Dateien/Dokumente MaxSize=Maximalgröße AttachANewFile=Neue Datei/Dokument anhängen LinkedObject=Verknüpftes Objekt -Miscellanous=Verschiedenes +Miscellaneous=Verschiedenes NbOfActiveNotifications=Anzahl aktiver Benachrichtigungen PredefinedMailTest=Dies ist ein Test-Mail.\n Die beiden Zeilen sind durch eine Zeilenschaltung getrennt. PredefinedMailTestHtml=Dies ist ein (HTML)-Test Mail (das Wort Test muss in Fettschrift erscheinen).
Die beiden Zeilen sollteb durch eine Zeilenschaltung getrennt sein. diff --git a/htdocs/langs/el_GR/admin.lang b/htdocs/langs/el_GR/admin.lang index 9628acf2211..444eb49855c 100644 --- a/htdocs/langs/el_GR/admin.lang +++ b/htdocs/langs/el_GR/admin.lang @@ -378,7 +378,7 @@ SendmailOptionNotComplete=Προσοχή, σε μερικά συστήματα L SendmailOptionMayHurtBuggedMTA=Χαρακτηριστικό για να στείλετε μηνύματα χρησιμοποιώντας τη μέθοδο "PHP mail απευθείας" θα δημιουργήσει ένα μήνυμα ηλεκτρονικού ταχυδρομείου που μπορεί να μην αναλυθούν σωστά με ορισμένους εξυπηρετητές λήψης της αλληλογραφίας. Αποτέλεσμα είναι ότι ορισμένα μηνύματα δεν μπορούν να διαβαστούν από ανθρώπους που φιλοξενούνται από τις πλατφόρμες thoose bugged. Είναι υπόθεση για ορισμένους παρόχους Internet (Ex: Orange στη Γαλλία). Αυτό δεν είναι ένα πρόβλημα σε Dolibarr ούτε σε PHP, αλλά πάνω διακομιστής παραλαβής αλληλογραφίας. Μπορείτε να προσθέσετε ωστόσο MAIN_FIX_FOR_BUGGED_MTA δυνατότητα εγκατάστασης σε 1 - να τροποποιήσει άλλες Dolibarr να το αποφύγουμε αυτό. Ωστόσο, ενδέχεται να αντιμετωπίσετε πρόβλημα με άλλους διακομιστές που σέβονται αυστηρά το πρότυπο SMTP. Η άλλη λύση (κατά προτίμηση) είναι να χρησιμοποιήσουμε τη μέθοδο "SMTP υποδοχή βιβλιοθήκη» που δεν έχει μειονεκτήματα. CompanyIdProfChecker=Επαγγελματική ταυτότητα μοναδική MustBeUnique=Πρέπει να είναι μοναδικό; -Miscellanous=Διάφορα +Miscellaneous=Διάφορα ServiceSetup=Υπηρεσίες εγκατάστασης μονάδας ProductServiceSetup=Προϊόντα και Υπηρεσίες εγκατάστασης μονάδων ViewProductDescInThirdpartyLanguageAbility=Οπτικοποίηση των προϊόντων περιγραφών στη γλώσσα άλλους κατασκευαστές diff --git a/htdocs/langs/el_GR/install.lang b/htdocs/langs/el_GR/install.lang index 77b706254bc..c5c835a22a5 100644 --- a/htdocs/langs/el_GR/install.lang +++ b/htdocs/langs/el_GR/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - el_GR - install CHARSET=UTF-8 InstallEasy=Just follow the instructions step by step. -MiscellanousChecks=Prerequisites check +MiscellaneousChecks=Prerequisites check DolibarrWelcome=Welcome to Dolibarr ConfFileExists=Configuration file %s exists. ConfFileDoesNotExists=Configuration file %s does not exist ! diff --git a/htdocs/langs/el_GR/other.lang b/htdocs/langs/el_GR/other.lang index 2e2671f60a5..b3c717c3550 100644 --- a/htdocs/langs/el_GR/other.lang +++ b/htdocs/langs/el_GR/other.lang @@ -21,7 +21,7 @@ TotalSizeOfAttachedFiles=Συνολικό μέγεθος επισυναπτώμ MaxSize=Μέγιστο μέγεθος AttachANewFile=Επισύναψη νέου αρχείου/εγγράφου LinkedObject=Συνδεδεμένα αντικείμενα -Miscellanous=Διάφορα +Miscellaneous=Διάφορα NbOfActiveNotifications=Πλήθος ειδοποιήσεων PredefinedMailTest=Δοκιμαστικο mail.\nΟι δύο γραμμές είναι χωρισμένες με carriage return. CreatedBy=Δημιουργήθηκε από %s diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang index a9aae951692..2a010d4733b 100644 --- a/htdocs/langs/en_US/admin.lang +++ b/htdocs/langs/en_US/admin.lang @@ -888,7 +888,7 @@ GeneratedPasswordDesc=Define here which rule you want to use to generate new pas DictionnaryDesc=Define here all reference datas. You can complete predefined value with yours. ConstDesc=This page allows you to edit all other parameters not available in previous pages. They are reserved parameters for advanced developers or for troubleshouting. OnceSetupFinishedCreateUsers=Warning, you are a Dolibarr administrator user. Administrator users are used to setup Dolibarr. For a usual usage of Dolibarr, it is recommended to use a non administrator user created from Users & Groups menu. -MiscellanousDesc=Define here all other parameters related to security. +MiscellaneousDesc=Define here all other parameters related to security. LimitsSetup=Limits/Precision setup LimitsDesc=You can define limits, precisions and optimisations used by Dolibarr here MAIN_MAX_DECIMALS_UNIT=Max decimals for unit prices @@ -983,7 +983,7 @@ CompanyIdProfChecker=Rules on Professional Ids MustBeUnique=Must be unique ? MustBeMandatory=Must be mandatory to create thirds? MustBeInvoiceMandatory=Must be mandatory to validate invoices? -Miscellanous=Miscellaneous +Miscellaneous=Miscellaneous ##### Webcal setup ##### WebCalSetup=Webcalendar link setup WebCalSyncro=Add Dolibarr events to WebCalendar diff --git a/htdocs/langs/en_US/install.lang b/htdocs/langs/en_US/install.lang index a5d3d5e7ce8..4954ffdf54c 100644 --- a/htdocs/langs/en_US/install.lang +++ b/htdocs/langs/en_US/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - en_US - install CHARSET=UTF-8 InstallEasy=Just follow the instructions step by step. -MiscellanousChecks=Prerequisites check +MiscellaneousChecks=Prerequisites check DolibarrWelcome=Welcome to Dolibarr ConfFileExists=Configuration file %s exists. ConfFileDoesNotExists=Configuration file %s does not exist ! diff --git a/htdocs/langs/en_US/other.lang b/htdocs/langs/en_US/other.lang index bcba133ba6d..b7885a8ca09 100644 --- a/htdocs/langs/en_US/other.lang +++ b/htdocs/langs/en_US/other.lang @@ -45,7 +45,7 @@ TotalSizeOfAttachedFiles=Total size of attached files/documents MaxSize=Maximum size AttachANewFile=Attach a new file/document LinkedObject=Linked object -Miscellanous=Miscellaneous +Miscellaneous=Miscellaneous NbOfActiveNotifications=Number of notifications PredefinedMailTest=This is a test mail.\nThe two lines are separated by a carriage return.\n\n__SIGNATURE__ PredefinedMailTestHtml=This is a test mail (the word test must be in bold).
The two lines are separated by a carriage return.

__SIGNATURE__ diff --git a/htdocs/langs/es_ES/admin.lang b/htdocs/langs/es_ES/admin.lang index 7c5101ce143..ce9e2d6d6e2 100644 --- a/htdocs/langs/es_ES/admin.lang +++ b/htdocs/langs/es_ES/admin.lang @@ -890,7 +890,7 @@ GeneratedPasswordDesc=Indique aquí que norma quiere utilizar para generar las c DictionnaryDesc=Indique aquí los datos de referencia. Puede completar/modificar los datos predefinidos con los suyos. ConstDesc=Cualquier otro parámetro no editable en las páginas anteriores OnceSetupFinishedCreateUsers=Atención, está bajo una cuenta de administrador de Dolibarr. Los administradores se utilizan para configurar a Dolibarr. Para un uso corriente de Dolibarr, se recomienda utilizar una cuenta no administrador creada desde el menú "Usuarios y grupos" -MiscellanousDesc=Defina aquí los otros parámetros relacionados con la seguridad. +MiscellaneousDesc=Defina aquí los otros parámetros relacionados con la seguridad. LimitsSetup=Configuración de límites y precisiones LimitsDesc=Puede definir aquí los límites y precisiones utilizados por Dolibarr MAIN_MAX_DECIMALS_UNIT=Decimales máximos para los precios unitarios @@ -982,7 +982,7 @@ CompanyIdProfChecker=Reglas sobre los ID profesionales MustBeUnique=¿Debe ser único? MustBeMandatory=¿Debe ser obligatorio para crear terceros? MustBeInvoiceMandatory=¿Debe ser obligatorio para validar facturas? -Miscellanous=Miscelánea +Miscellaneous=Miscelánea ##### Webcal setup ##### WebCalSetup=Configuración de enlace con el calendario Webcalendar WebCalSyncro=Integrar los eventos Dolibarr en WebCalendar diff --git a/htdocs/langs/es_ES/install.lang b/htdocs/langs/es_ES/install.lang index d53dcc28407..9d42c609104 100644 --- a/htdocs/langs/es_ES/install.lang +++ b/htdocs/langs/es_ES/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - es_ES - install CHARSET=UTF-8 InstallEasy=Hemos procurado que la instalación sea lo más simple posible, usted sólo tiene que seguir los pasos uno a uno. -MiscellanousChecks=Comprobación de los prerrequisitos +MiscellaneousChecks=Comprobación de los prerrequisitos DolibarrWelcome=Bienvenido a Dolibarr ConfFileExists=El archivo de configuración %s existe. ConfFileDoesNotExists=¡El archivo de configuración %s no existe! diff --git a/htdocs/langs/es_ES/other.lang b/htdocs/langs/es_ES/other.lang index f86e7e74799..6c590d73f68 100644 --- a/htdocs/langs/es_ES/other.lang +++ b/htdocs/langs/es_ES/other.lang @@ -44,7 +44,7 @@ TotalSizeOfAttachedFiles=Tamaño total de los archivos/documentos adjuntos MaxSize=Tamaño máximo AttachANewFile=Adjuntar nuevo archivo/documento LinkedObject=Objeto adjuntado -Miscellanous=Miscelánea +Miscellaneous=Miscelánea NbOfActiveNotifications=Número notificaciones PredefinedMailTest=Esto es un correo de prueba.\nLas 2 líneas están separadas por un retorno de carro a la línea. PredefinedMailTestHtml=Esto es un e-mail de prueba(la palabra prueba debe de estar en negrita).
Las 2 líneas están separadas por un retorno de carro en la línea diff --git a/htdocs/langs/et_EE/admin.lang b/htdocs/langs/et_EE/admin.lang index b42ccb0a190..5bf1e057406 100644 --- a/htdocs/langs/et_EE/admin.lang +++ b/htdocs/langs/et_EE/admin.lang @@ -811,7 +811,7 @@ GeneratedPasswordDesc=Määratlege siin, mis reegel, mida soovite kasutada, et l DictionnaryDesc=Määratlege siin kõik viide andmete suhtes. Te võite täita eelnevalt kindlaksmääratud väärtus sinu. ConstDesc=Sellel leheküljel saab muuta kõik muud parameetrid ei ole kättesaadavad varasematel lehekülgedel. Need on ette nähtud parameetrid arenenud arendajad või troubleshouting. OnceSetupFinishedCreateUsers=Warning, olete Dolibarr administraatori. Administrator kasutajad on harjunud setup Dolibarr. Sest tavaline kasutamine Dolibarr, on soovitatav kasutada mitte administraatori loodud Kasutajad ja grupid menüü. -MiscellanousDesc=Määratlege siin kõik muud parameetrid, mis on seotud turvalisuse. +MiscellaneousDesc=Määratlege siin kõik muud parameetrid, mis on seotud turvalisuse. LimitsSetup=Piirid / Täppisseadmed setup LimitsDesc=Saate määrata piirid, täpsust ja optimeerimist, mida Dolibarr siin MAIN_MAX_DECIMALS_UNIT=Max kümnendkohtade jaoks ühikuhinnad @@ -885,7 +885,7 @@ DocumentModelOdt=Loo dokumente OpenDocuments mallid (. ODT faile OpenOffice, KOf WatermarkOnDraft=Vesimärgi dokumendi eelnõu CompanyIdProfChecker=Professional Id ainulaadne MustBeUnique=Peab olema unikaalne? -Miscellanous=Muu +Miscellaneous=Muu WebCalSetup=WebCalendar link setup WebCalSyncro=Lisa Dolibarr üritused WebCalendar WebCalAllways=Alati ei paludes diff --git a/htdocs/langs/et_EE/install.lang b/htdocs/langs/et_EE/install.lang index 6ec8e605c2a..02a3d958590 100644 --- a/htdocs/langs/et_EE/install.lang +++ b/htdocs/langs/et_EE/install.lang @@ -9,7 +9,7 @@ // Reference language: en_US -> et_EE CHARSET=UTF-8 InstallEasy=Lihtsalt järgige samm-sammult. -MiscellanousChecks=Eeldused kontrollida +MiscellaneousChecks=Eeldused kontrollida DolibarrWelcome=Tere tulemast Dolibarr ConfFileExists=Konfiguratsioonifaili %s olemas. ConfFileDoesNotExists=Konfiguratsioonifaili %s ei eksisteeri! diff --git a/htdocs/langs/et_EE/other.lang b/htdocs/langs/et_EE/other.lang index 05f03c45749..8d83875f9c2 100644 --- a/htdocs/langs/et_EE/other.lang +++ b/htdocs/langs/et_EE/other.lang @@ -52,7 +52,7 @@ TotalSizeOfAttachedFiles=Kogusuurus lisatud faile / dokumente MaxSize=Maksimaalne suurus AttachANewFile=Lisada uue faili / dokumendi LinkedObject=Lingitud objekti -Miscellanous=Muu +Miscellaneous=Muu NbOfActiveNotifications=Teadete arv PredefinedMailTest=See on test mail. \ NThe kaks rida on eraldatud kelgutagastusmärgid. PredefinedMailTestHtml=See on test post (sõna test peab olema paksus kirjas).
2 rida on eraldatud kelgutagastusmärgid. diff --git a/htdocs/langs/fa_IR/admin.lang b/htdocs/langs/fa_IR/admin.lang index 2f703f61e92..e68113502ae 100644 --- a/htdocs/langs/fa_IR/admin.lang +++ b/htdocs/langs/fa_IR/admin.lang @@ -677,7 +677,7 @@ GeneratedPasswordDesc=هنا تعريف القاعدة التي تريد است DictionnaryDesc=تعرف هنا إشارة datas. يمكنك استكمال مسبقا مع قيمة لك. ConstDesc=تسمح لك هذه الصفحة لتحرير جميع البارامترات الأخرى غير المتوفرة في الصفحات السابقة. فهي محفوظة لمعايير متقدمة للمطورين أو troubleshouting. OnceSetupFinishedCreateUsers=تحذير فأنت Dolibarr مدير المستخدم. مدير المستخدمين تستخدم لإعداد Dolibarr. لالمعتاد استخدام Dolibarr ، يوصى باستخدام غير مستخدم مدير خلق مجموعات من المستخدمين & القائمة. -MiscellanousDesc=هنا تعريف جميع البارامترات الأخرى ذات الصلة بالأمن. +MiscellaneousDesc=هنا تعريف جميع البارامترات الأخرى ذات الصلة بالأمن. LimitsSetup=حدود / الدقيقة الإعداد LimitsDesc=يمكنك تحديد الحدود ، وoptimisations الايضاحات التي تستخدمها Dolibarr هنا MAIN_MAX_DECIMALS_UNIT=ماكس عشرية لأسعار الوحدات diff --git a/htdocs/langs/fa_IR/install.lang b/htdocs/langs/fa_IR/install.lang index 545d17c8f76..5e3f6f3d6c1 100644 --- a/htdocs/langs/fa_IR/install.lang +++ b/htdocs/langs/fa_IR/install.lang @@ -10,7 +10,7 @@ // Reference language: en_US CHARSET=UTF-8 InstallEasy=فقط اتبع التعليمات خطوة بخطوة. -MiscellanousChecks=التحقق من الشروط الأساسية +MiscellaneousChecks=التحقق من الشروط الأساسية DolibarrWelcome=مرحبا بكم في Dolibarr ConfFileExists=ملفات موجودة ٪ ق. ConfFileDoesNotExists=ملفات ل ٪ لا وجود له! diff --git a/htdocs/langs/fa_IR/other.lang b/htdocs/langs/fa_IR/other.lang index c894874b674..482b40f4888 100644 --- a/htdocs/langs/fa_IR/other.lang +++ b/htdocs/langs/fa_IR/other.lang @@ -27,7 +27,7 @@ TotalSizeOfAttachedFiles=اجمالى حجم الملفات المرفقة / و MaxSize=الحجم الأقصى AttachANewFile=إرفاق ملف جديد / وثيقة LinkedObject=ربط وجوه -Miscellanous=متفرقات +Miscellaneous=متفرقات NbOfActiveNotifications=عدد الإخطارات ChooseYourDemoProfil=اختيار عرض ملف المباراة التي أنشطتك... DemoFundation=أعضاء في إدارة مؤسسة diff --git a/htdocs/langs/fi_FI/admin.lang b/htdocs/langs/fi_FI/admin.lang index a79d9c9adbf..d8c9d5f70ed 100644 --- a/htdocs/langs/fi_FI/admin.lang +++ b/htdocs/langs/fi_FI/admin.lang @@ -595,7 +595,7 @@ GeneratedPasswordDesc=Määritä tässä joka sääntö, jota haluat käyttää DictionnaryDesc=Määritä tässä kaikki viittaukset datas. Voit täysin ennalta-arvon sinun. ConstDesc=Tällä sivulla voit muokata kaikkia muita muuttujia ei ole saatavilla edellinen sivua. Ne on varattu parametrit edistyneelle kehittäjät tai troubleshouting. OnceSetupFinishedCreateUsers=Varoitus, olet Dolibarr järjestelmänvalvojan käyttäjätili. Administrator käyttäjät ovat tottuneet setup Dolibarr. Jos kyseessä on tavanomainen käyttö Dolibarr, on suositeltavaa käyttää kuin järjestelmänvalvojan käyttäjätili luotu Käyttäjät & ryhmät valikosta. -MiscellanousDesc=Määritä tässä kaikki muut parametrit, jotka liittyvät turvallisuuteen. +MiscellaneousDesc=Määritä tässä kaikki muut parametrit, jotka liittyvät turvallisuuteen. LimitsSetup=Rajat / Precision setup LimitsDesc=Voit määrittää rajat, täsmennyksiä ja optimisations käyttää Dolibarr tästä MAIN_MAX_DECIMALS_UNIT=Max desimaalitarkkuuksia yksikkökohtaiseen hinnat @@ -1269,7 +1269,7 @@ SendmailOptionNotComplete=Varoitus, joissakin Linux-järjestelmissä, lähettä SendmailOptionMayHurtBuggedMTA=Ominaisuus lähettää sähköpostiviestejä käyttäen menetelmää "PHP mail suoraan" luo sähköpostiviestin, joka saattaa olla oikein jäsentää jotkut saavat sähköpostipalvelimia. Tulos on, että jotkut sähköpostit eivät voi lukea ihmisten isännöi thoose salakuunnella alustoilla. On kyse jostain Internet-palveluntarjoajien (Ex: Orange Ranskassa). Tämä ei ole ongelma tulee Dolibarr eikä osaksi PHP vaan päälle saa sähköpostipalvelimelle. Voit kuitenkin lisätä vaihtoehto MAIN_FIX_FOR_BUGGED_MTA 1 tulee setup - muuta muuttaa Dolibarr välttää. Kuitenkin saattaa ilmetä ongelmia muiden palvelimien mielessä tiukasti SMTP-standardin. Muut liuosta (Suositeltu) on käyttää menetelmää "SMTP liittimeen kirjasto", joka ei ole haittaa. CompanyIdProfChecker=Ammatillinen tunnus ainutlaatuinen MustBeUnique=Täytyy olla ainutlaatuinen? -Miscellanous=Muut +Miscellaneous=Muut ContractsSetup=Sopimukset moduuli setup ContractsNumberingModules=Sopimukset numerointi moduulit AdherentLoginRequired=Hallitse Sisään jokaiselle jäsenelle diff --git a/htdocs/langs/fi_FI/install.lang b/htdocs/langs/fi_FI/install.lang index 81448a6ab86..a8710768ef1 100644 --- a/htdocs/langs/fi_FI/install.lang +++ b/htdocs/langs/fi_FI/install.lang @@ -10,7 +10,7 @@ // Reference language: en_US CHARSET=UTF-8 InstallEasy=Me yritimme tehdä Dolibarr setup mahdollisimman helppoa. Seuraa ohjeita vaihe vaiheelta. -MiscellanousChecks=Esitiedot tarkistaa +MiscellaneousChecks=Esitiedot tarkistaa DolibarrWelcome=Tervetuloa Dolibarr ConfFileExists=Configuration file %s on olemassa. ConfFileDoesNotExists=Configuration file %s ei ole olemassa! diff --git a/htdocs/langs/fi_FI/other.lang b/htdocs/langs/fi_FI/other.lang index 9f0e94160b8..f81601b4032 100644 --- a/htdocs/langs/fi_FI/other.lang +++ b/htdocs/langs/fi_FI/other.lang @@ -23,7 +23,7 @@ TotalSizeOfAttachedFiles=Kokonaiskoosta liitettyjen tiedostojen / asiakirjat MaxSize=Enimmäiskoko AttachANewFile=Liitä uusi tiedosto / asiakirjan LinkedObject=Linkitettyä objektia -Miscellanous=Miscellaneous +Miscellaneous=Miscellaneous NbOfActiveNotifications=Ilmoitusten lukumäärä ChooseYourDemoProfil=Valitse demo profil jotka vastaavat aktiviisuutesi ... DemoCompanyShopWithCashDesk=Hallinnoi liikkeen kanssa kassa diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang index a20821cd61b..e688d9eab8c 100644 --- a/htdocs/langs/fr_FR/admin.lang +++ b/htdocs/langs/fr_FR/admin.lang @@ -891,7 +891,7 @@ GeneratedPasswordDesc= Definissez ici quelle règle vous voulez utiliser pour g DictionnaryDesc= Définissez ici les données de référence. Vous pouvez compléter/modifier les données prédéfinies avec les vôtres. ConstDesc= Cet écran permet d'éditer tout autre paramètre non éditable dans les pages précédentes. Ce sont en général des paramètres réservés aux développeurs avancés ou utilisés pour du dépannage. OnceSetupFinishedCreateUsers= Attention, vous êtes sous un compte administrateur de Dolibarr. Les administrateurs sont utilisés pour configurer Dolibarr. Pour une utilisation courante de Dolibarr, il est recommandé d'utiliser un compte non administrateur créé depuis le menu "Utilisateurs & Groupes". -MiscellanousDesc= Définissez ici les autres paramètres en rapport avec la sécurité. +MiscellaneousDesc= Définissez ici les autres paramètres en rapport avec la sécurité. LimitsSetup= Configuration des limites et précisions LimitsDesc= Vous pouvez définir ici les limites, précisions et optimisations utilisées par Dolibarr MAIN_MAX_DECIMALS_UNIT= Nombre de décimales maximum pour les prix unitaires @@ -984,7 +984,7 @@ CompanyIdProfChecker=Règles sur les Ids professionnels MustBeUnique=Doit être unique ? MustBeMandatory=Doit être obligatoire pour creer tiers ? MustBeInvoiceMandatory=Doit être obligatoire pour valider factures ? -Miscellanous=Divers +Miscellaneous=Divers ##### Webcal setup ##### WebCalSetup= Configuration du lien vers le calendrier Webcalendar WebCalSyncro= Intégrer les événements Dolibarr dans WebCalendar diff --git a/htdocs/langs/fr_FR/install.lang b/htdocs/langs/fr_FR/install.lang index 5a34feaf94e..bca39cf1bae 100644 --- a/htdocs/langs/fr_FR/install.lang +++ b/htdocs/langs/fr_FR/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - fr_FR - install CHARSET=UTF-8 InstallEasy=Veuillez suivre les étapes une à une. -MiscellanousChecks=Vérification de prérequis +MiscellaneousChecks=Vérification de prérequis DolibarrWelcome=Bienvenue sur Dolibarr ConfFileExists=Le fichier de configuration %s existe. ConfFileDoesNotExists=Le fichier de configuration %s n'existe pas ! diff --git a/htdocs/langs/fr_FR/other.lang b/htdocs/langs/fr_FR/other.lang index 9076dff82ba..e448feaa3b4 100644 --- a/htdocs/langs/fr_FR/other.lang +++ b/htdocs/langs/fr_FR/other.lang @@ -44,7 +44,7 @@ TotalSizeOfAttachedFiles=Taille total fichiers/documents liés MaxSize=Taille maximum AttachANewFile=Ajouter un nouveau fichier/document LinkedObject=Objet lié -Miscellanous=Divers +Miscellaneous=Divers NbOfActiveNotifications=Nombre de notifications PredefinedMailTest=Ceci est un mail de test.\nLes 2 lignes sont séparées par un retour à la ligne.\n\n__SIGNATURE__ PredefinedMailTestHtml=Ceci est un mail de test (le mot test doit être en gras).
Les 2 lignes sont séparées par un retour à la ligne.

__SIGNATURE__ diff --git a/htdocs/langs/he_IL/admin.lang b/htdocs/langs/he_IL/admin.lang index 4c9f6a55ec0..aa1b8cd5a70 100644 --- a/htdocs/langs/he_IL/admin.lang +++ b/htdocs/langs/he_IL/admin.lang @@ -811,7 +811,7 @@ GeneratedPasswordDesc=להגדיר כאן כלל שבו ברצונך להשתמ DictionnaryDesc=להגדיר כאן את כל datas הפניה. אתה יכול להשלים ערך מוגדר מראש עם שלך. ConstDesc=דף זה מאפשר לך לערוך את כל הפרמטרים האחרים לא זמין בעמודים הקודמים. הם שמורים הפרמטרים למפתחים מתקדמים או troubleshouting. OnceSetupFinishedCreateUsers=אזהרה, אתה משתמש שמנהל Dolibarr. מנהל משתמשים רגילים להגדיר Dolibarr. לשימוש הרגיל של Dolibarr, מומלץ להשתמש משתמש של מנהל מערכת לא נוצר משתמשים & תפריט קבוצות. -MiscellanousDesc=להגדיר כאן את כל הפרמטרים האחרים הקשורים לביטחון. +MiscellaneousDesc=להגדיר כאן את כל הפרמטרים האחרים הקשורים לביטחון. LimitsSetup=גבולות / הגדרת Precision LimitsDesc=ניתן להגדיר גבולות, precisions ו optimisations המשמשים Dolibarr כאן MAIN_MAX_DECIMALS_UNIT=מקס שברים עשרוניים עבור מחירי יחידה @@ -887,7 +887,7 @@ DocumentModelOdt=צור מסמכים מתבניות OpenDocuments (. ODT קבצ WatermarkOnDraft=סימן מים על מסמך טיוטה CompanyIdProfChecker=Professional מזהה ייחודי MustBeUnique=חייב להיות ייחודי? -Miscellanous=שונות +Miscellaneous=שונות WebCalSetup=קישור לוח השנה ההתקנה WebCalSyncro=הוסף אירוע Dolibarr אל לוח השנה WebCalAllways=תמיד, לא לשאול diff --git a/htdocs/langs/he_IL/install.lang b/htdocs/langs/he_IL/install.lang index 8fa0761a30c..0e9af490a47 100644 --- a/htdocs/langs/he_IL/install.lang +++ b/htdocs/langs/he_IL/install.lang @@ -9,7 +9,7 @@ // Reference language: en_US -> he_IL CHARSET=UTF-8 InstallEasy=עקוב אחר ההוראות צעד אחר צעד. -MiscellanousChecks=תנאים מוקדמים לבדוק +MiscellaneousChecks=תנאים מוקדמים לבדוק DolibarrWelcome=ברוכים הבאים Dolibarr ConfFileExists=קובץ %s תצורת קיים. ConfFileDoesNotExists=קובץ %s תצורת לא קיים! diff --git a/htdocs/langs/he_IL/other.lang b/htdocs/langs/he_IL/other.lang index 1b3cf7c3de1..a39390e15b5 100644 --- a/htdocs/langs/he_IL/other.lang +++ b/htdocs/langs/he_IL/other.lang @@ -52,7 +52,7 @@ TotalSizeOfAttachedFiles=הגודל הכולל של הקבצים / מסמכים MaxSize=גודל מרבי של AttachANewFile=צירוף קובץ מסמך חדש / LinkedObject=אובייקט מקושר -Miscellanous=שונות +Miscellaneous=שונות NbOfActiveNotifications=מספר הודעות PredefinedMailTest=זהו אלקטרוני הבדיקה. \ NThe שני קווים מפרידים בהחזרת גררה. PredefinedMailTestHtml=זהו אלקטרוני המבחן (מבחן מילה חייב להיות מודגש).
שני קווים מפרידים בהחזרת גררה. diff --git a/htdocs/langs/hu_HU/admin.lang b/htdocs/langs/hu_HU/admin.lang index fd1a1715e7a..ea8420286e6 100644 --- a/htdocs/langs/hu_HU/admin.lang +++ b/htdocs/langs/hu_HU/admin.lang @@ -811,7 +811,7 @@ GeneratedPasswordDesc=Határozza meg itt, hogy melyik szabályt kívánja haszn DictionnaryDesc=Adjuk meg itt az összes referencia adatok. Készítse el előre meghatározott értéket a tiéd. ConstDesc=Ez az oldal lehetővé teszi, hogy módosítsuk az összes többi paraméter nem áll rendelkezésre az előző oldalakon. Ők tartják fenn paraméterek haladó fejlesztőknek vagy troubleshouting. OnceSetupFinishedCreateUsers=Figyelem, egy Dolibarr rendszergazdaként. Rendszergazda felhasználók használják Dolibarr beállítani. A szokásos használat Dolibarr, akkor ajánlatos használni egy nem adminisztrátori felhasználói létre Felhasználók és csoportok menüben. -MiscellanousDesc=Adjuk meg itt az összes többi paraméter a biztonsággal kapcsolatos. +MiscellaneousDesc=Adjuk meg itt az összes többi paraméter a biztonsággal kapcsolatos. LimitsSetup=Korlátok / Precision beállítás LimitsDesc=Megadhatjuk, korlátok, pontosítást és optimalizálás által használt Dolibarr itt MAIN_MAX_DECIMALS_UNIT=Max a tizedes egységár @@ -885,7 +885,7 @@ DocumentModelOdt=Generálása dokumentumok OpenDocuments sablonok (. ODT fájlok WatermarkOnDraft=Vízjel dokumentum tervezetét CompanyIdProfChecker=Professzionális egyedi azonosító MustBeUnique=Egyedinek kell lennie? -Miscellanous=Vegyes +Miscellaneous=Vegyes WebCalSetup=WebCalendar kapcsolat beállítása WebCalSyncro=Add Dolibarr események WebCalendar WebCalAllways=Mindig, nem kérdezi diff --git a/htdocs/langs/hu_HU/install.lang b/htdocs/langs/hu_HU/install.lang index b912875ca51..643ed52907d 100644 --- a/htdocs/langs/hu_HU/install.lang +++ b/htdocs/langs/hu_HU/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - hu_HU - install CHARSET=UTF-8 InstallEasy=Csak kövesse az utasitásokat lépésrõl lépésre. -MiscellanousChecks=Feltételek ellenörézse +MiscellaneousChecks=Feltételek ellenörézse DolibarrWelcome=Üdvözöljük a Dolibarr rendszerében ConfFileExists=%s konfigurációs fájl már létezik. ConfFileDoesNotExists=%s konfigurációs fájl NEM létezik! diff --git a/htdocs/langs/hu_HU/other.lang b/htdocs/langs/hu_HU/other.lang index 97c3c3e3470..a1f3fff1d0b 100644 --- a/htdocs/langs/hu_HU/other.lang +++ b/htdocs/langs/hu_HU/other.lang @@ -142,7 +142,7 @@ Notify_BILL_SUPPLIER_SENTBYMAIL=Szállító számlát postai úton Notify_CONTRACT_VALIDATE=A szerződés a validált Notify_FICHEINTER_VALIDATE=Beavatkozás érvényesített LinkedObject=Csatolt objektum -Miscellanous=Vegyes +Miscellaneous=Vegyes NbOfActiveNotifications=Bejelentések száma PredefinedMailTest=Ez egy teszt mailt. \ NA két vonal választja el egymástól kocsivissza. PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Meg fogja találni itt a számla __FACREF__ \n\n__PERSONALIZED__ Tisztelettel \n\n__SIGNATURE__ diff --git a/htdocs/langs/is_IS/admin.lang b/htdocs/langs/is_IS/admin.lang index 6ed5df3e4fb..2c4364cae88 100644 --- a/htdocs/langs/is_IS/admin.lang +++ b/htdocs/langs/is_IS/admin.lang @@ -734,7 +734,7 @@ GeneratedPasswordDesc=Veldu hér sem regla sem þú vilt nota til að búa til n DictionnaryDesc=Define hér öll tilvísun gögn. Þú getur lokið fyrirfram gildi við þitt. ConstDesc=Þessi síða leyfir þér að breyta öllum öðrum breytum ekki í boði í fyrri síður. Þau eru frátekin breytur fyrir háþróaður verktaki eða troubleshouting. OnceSetupFinishedCreateUsers=Aðvörun, ertu Dolibarr stjórnandi notandann. Stjórnandi notendur eru notuð til að skipulag Dolibarr. Fyrir venjulega notkun Dolibarr, það er mælt með að nota ekki stjórnandi notandi stofnaðar Notendur & Groups valmyndinni. -MiscellanousDesc=Veldu hér öllum öðrum þáttum sem tengjast öryggi. +MiscellaneousDesc=Veldu hér öllum öðrum þáttum sem tengjast öryggi. LimitsSetup=Mörk / Precision skipulag LimitsDesc=Þú getur skilgreint takmörk, precisions og optimisations notaður við Dolibarr hér MAIN_MAX_DECIMALS_UNIT=Max brotum um verð eining @@ -1260,7 +1260,7 @@ SendmailOptionNotComplete=Aðvörun, á sumum Linux kerfi, að senda tölvupóst SendmailOptionMayHurtBuggedMTA=Lögun að senda póst með aðferð "PHP póst-skrá" mun búa til tölvupóst sem gæti ekki rétt flokka af sumum sem fá póstur framreiðslumaður. Niðurstaðan er sú að sumir póstur er ekki hægt að lesa með því að fólk hýst hjá thoose bugged umhverfi. Það er raunin fyrir nokkrum Internet þjónustur (td: Orange í Frakklandi). Þetta er ekki vandamál í Dolibarr né í PHP en á móti póstur framreiðslumaður. Þú getur hins vegar bætt möguleika MAIN_FIX_FOR_BUGGED_MTA 1. í uppsetningu - annað að breyta Dolibarr að forðast þetta. Hins vegar getur þú lendir í vandræðum með öðrum netþjónum sem virðing stranglega SMTP staðall. Önnur lausn (recommanded) er að nota aðferðina "SMTP fals bókasafn" sem hefur enga ókosti. CompanyIdProfChecker=Professional Id einstakt MustBeUnique=Verður að vera einstakt? -Miscellanous=Ýmislegt +Miscellaneous=Ýmislegt ContractsSetup=Samningar mát skipulag ContractsNumberingModules=Samningar númera einingar AdherentLoginRequired=Stjórna Innskráning fyrir hvern meðlim diff --git a/htdocs/langs/is_IS/install.lang b/htdocs/langs/is_IS/install.lang index 6435b12fc13..7969cfea80c 100644 --- a/htdocs/langs/is_IS/install.lang +++ b/htdocs/langs/is_IS/install.lang @@ -113,7 +113,7 @@ ServerVersion=Gagnasafn framreiðslumaður útgáfa // START - Lines generated via autotranslator.php tool (2010-07-10 01:17:11). // Reference language: en_US InstallEasy=Fylgdu leiðbeiningunum skref fyrir skref. -MiscellanousChecks=Undanfarar stöðva +MiscellaneousChecks=Undanfarar stöðva DolibarrWelcome=Velkomin á Dolibarr ConfFileExists=Stillingar skrá %s til. ConfFileDoesNotExists=Stillingar %s er ekki til! diff --git a/htdocs/langs/is_IS/other.lang b/htdocs/langs/is_IS/other.lang index f0343871b02..1d8f5eb8816 100644 --- a/htdocs/langs/is_IS/other.lang +++ b/htdocs/langs/is_IS/other.lang @@ -28,7 +28,7 @@ TotalSizeOfAttachedFiles=Heildarstærð meðfylgjandi skrá / gögn MaxSize=Hámarks stærð AttachANewFile=Hengja nýja skrá / skjal LinkedObject=Tengd mótmæla -Miscellanous=Ýmislegt +Miscellaneous=Ýmislegt NbOfActiveNotifications=Fjöldi tilkynninga PredefinedMailTest=Þetta er prófun póst. \ NThe tvær línur eru aðskilin með vagn til baka. PredefinedMailTestHtml=Þetta er prófun póstur (orðið próf verður feitletruð).
Þessar tvær línur eru aðskilin með vagn til baka. diff --git a/htdocs/langs/it_IT/admin.lang b/htdocs/langs/it_IT/admin.lang index bb7757adb94..678da2c6fcb 100644 --- a/htdocs/langs/it_IT/admin.lang +++ b/htdocs/langs/it_IT/admin.lang @@ -606,8 +606,8 @@ MenuUseLayout =Permetti di nascondere il menu verticale (javascript no MessageLogin =Messaggio per la pagina di login MessageOfDay =Messaggio del giorno MinLength =Durata minima -MiscellanousDesc =Definire qui tutti gli altri parametri relativi alla sicurezza. -Miscellanous =Varie +MiscellaneousDesc =Definire qui tutti gli altri parametri relativi alla sicurezza. +Miscellaneous =Varie ModelModules =Modelli per i documenti ModifMenu =Modifica Menu ModifyProductDescAbility =Personalizzazione delle descrizioni dei prodotti nei form diff --git a/htdocs/langs/it_IT/install.lang b/htdocs/langs/it_IT/install.lang index 510d5a7abbe..d8ded8bdf16 100644 --- a/htdocs/langs/it_IT/install.lang +++ b/htdocs/langs/it_IT/install.lang @@ -154,7 +154,7 @@ MigrationStockDetail =Aggiornamento delle scorte dei prodotti MigrationSuccessfullUpdate =Aggiornamento completato con successo MigrationSupplierOrder =Migrazione dei dati degli ordini fornitori MigrationUpdateFailed =Aggiornamento fallito -MiscellanousChecks =Verificare prerequisiti +MiscellaneousChecks =Verificare prerequisiti NextStepMightLastALongTime =Il passaggio in corso può richiedere diverso tempo. Attendi il caricamento completo della schermata successiva prima di continuare. NotAvailable =Non disponibile OpenBaseDir =Parametro openbasedir diff --git a/htdocs/langs/it_IT/other.lang b/htdocs/langs/it_IT/other.lang index 33e575ca64f..9dee683f29f 100644 --- a/htdocs/langs/it_IT/other.lang +++ b/htdocs/langs/it_IT/other.lang @@ -90,7 +90,7 @@ MemberDeletedInDolibarr =Membro eliminato da Dolibarr MemberResiliatedInDolibarr =Membro %s revocato su Dolibarr MemberSubscriptionAddedInDolibarr =Adesione membro %s aggiunta a Dolibarr MemberValidatedInDolibarr =Membro %s convalidato su Dolibarr -Miscellanous =Varie +Miscellaneous =Varie ModifiedBy =Modificato da %s NbOfActiveNotifications =Numero di notifiche attive NbOfAttachedFiles =Numero di file/documenti allegati diff --git a/htdocs/langs/ja_JP/admin.lang b/htdocs/langs/ja_JP/admin.lang index f1a474fed1a..ae5819e0007 100644 --- a/htdocs/langs/ja_JP/admin.lang +++ b/htdocs/langs/ja_JP/admin.lang @@ -811,7 +811,7 @@ GeneratedPasswordDesc=あなたが自動生成されたパスワードを持つ DictionnaryDesc=ここですべての参照件のデータを定義します。あなたはあなたで定義済みの値を完了することができます。 ConstDesc=このページでは、前のページで使用できない他のすべてのパラメータを編集することができます。彼らは高度な開発者のためにまたはtroubleshoutingのパラメータを予約されています。 OnceSetupFinishedCreateUsers=警告は、あなたはDolibarr管理者のユーザーです。管理者ユーザーがDolibarrをセットアップするために使用されます。 Dolibarrの通常の使用方法については、それはユーザーとグループ]メニューから作成された非管理者ユーザーを使用することをお勧めします。 -MiscellanousDesc=ここでセキュリティに関連する他のすべてのパラメータを定義します。 +MiscellaneousDesc=ここでセキュリティに関連する他のすべてのパラメータを定義します。 LimitsSetup=制限/精密セットアップ LimitsDesc=ここDolibarrで使用される限界、精度と最適化を定義することができます。 MAIN_MAX_DECIMALS_UNIT=ユニット価格の最大小数点以下 @@ -885,7 +885,7 @@ DocumentModelOdt=OpenDocumentsテンプレートからドキュメントを生 WatermarkOnDraft=ドラフト文書に透かし CompanyIdProfChecker=ユニークなイドプロ MustBeUnique=一意である必要がありますか? -Miscellanous=雑多 +Miscellaneous=雑多 WebCalSetup=のwebcalendarリンクのセットアップ WebCalSyncro=のwebcalendar Dolibarrイベントを追加 WebCalAllways=常に、何を求めません diff --git a/htdocs/langs/ja_JP/install.lang b/htdocs/langs/ja_JP/install.lang index 0d74ebfdd7a..c39d1038bc7 100644 --- a/htdocs/langs/ja_JP/install.lang +++ b/htdocs/langs/ja_JP/install.lang @@ -137,7 +137,7 @@ MigrationActioncommElement=アクション上でデータを更新する // START - Lines generated via autotranslator.php tool (2012-02-29 16:41:06). // Reference language: en_US -> ja_JP -MiscellanousChecks=前提条件チェック +MiscellaneousChecks=前提条件チェック DolibarrWelcome=Dolibarrへようこそ ConfFileExists=コンフィギュレーションファイル%sが存在しています 。 ConfFileDoesNotExists=コンフィギュレーションファイル%sは存在しません! diff --git a/htdocs/langs/ja_JP/other.lang b/htdocs/langs/ja_JP/other.lang index af28cd1738d..d78c343cb5b 100644 --- a/htdocs/langs/ja_JP/other.lang +++ b/htdocs/langs/ja_JP/other.lang @@ -34,7 +34,7 @@ TotalSizeOfAttachedFiles=添付ファイル/文書の合計サイズ MaxSize=最大サイズ AttachANewFile=新しいファイル/文書を添付する LinkedObject=リンクされたオブジェクト -Miscellanous=その他 +Miscellaneous=その他 NbOfActiveNotifications=通知の数 DemoDesc=Dolibarrは、いくつかの機能モジュールで構成されるコンパクトなERP / CRMです。これが発生しないようにすべてのモジュールが含まれているデモは、何の意味もない。ので、いくつかのデモのプロファイルが用意されています。 ChooseYourDemoProfil=あなたの活動を一致させるデモのプロファイルを選択... diff --git a/htdocs/langs/nb_NO/admin.lang b/htdocs/langs/nb_NO/admin.lang index f37656c62ab..d1800bfcd07 100644 --- a/htdocs/langs/nb_NO/admin.lang +++ b/htdocs/langs/nb_NO/admin.lang @@ -592,7 +592,7 @@ GeneratedPasswordDesc=Her angir du hvilken regel som skal generere nye passord d DictionnaryDesc=Her angir du alle referansedata/begreper. Du kan komplettere de forhåndsdefinerte dataene med dine egne. ConstDesc=Her kan du endre innstillinger som ikke er tilgjengelige på de foregående sidene. Dette er reserverte parametere, for avanserte utviklere eller for feilsøking. OnceSetupFinishedCreateUsers=OBS! Du er Dolibarr-administrator. Administratorer er brukere som kan sette opp programmet. For vanlig bruk av Dolibarr bør du lage en bruker uten administratorrettigheter ( i Brukere og grupper ). -MiscellanousDesc=Her angir du sikkerhetsinnstillinger for Dolibarr. +MiscellaneousDesc=Her angir du sikkerhetsinnstillinger for Dolibarr. LimitsSetup=Grenser/presisjon LimitsDesc=Her angir du grenser og presisjon som skal brukes i programmet MAIN_MAX_DECIMALS_UNIT=Desimaler i enhetspriser @@ -1282,7 +1282,7 @@ SendmailOptionNotComplete=Advarsel, på enkelte Linux-systemer, for å sende e-p SendmailOptionMayHurtBuggedMTA=Funksjon for å sende post ved hjelp av metoden "PHP mail direkte" vil generere en melding som kanskje ikke riktig analyseres av noen som fikk postservere. Resultatet er at enkelte poster ikke kan leses av folk vert thoose avlyttet plattformer. Det er tilfelle for enkelte Internett-leverandører (Ex: Orange i Frankrike). Dette er ikke et problem i Dolibarr heller inn PHP, men på motta e-post server. Du kan imidlertid legge til alternativ MAIN_FIX_FOR_BUGGED_MTA til 1 i oppsettet - andre til å endre Dolibarr å unngå dette. Imidlertid kan du oppleve problemer med andre servere som respekt strengt SMTP standard. Den andre løsningen (Anbefalte) er å bruke metoden "SMTP socket bibliotek" som ikke har noen ulemper. CompanyIdProfChecker=Profesjonell Id unik MustBeUnique=Må være unik? -Miscellanous=Diverse +Miscellaneous=Diverse ContractsSetup=Kontrakter modul oppsett ContractsNumberingModules=Kontrakter nummerering moduler AdherentLoginRequired=Behandle en Login for hvert medlem diff --git a/htdocs/langs/nb_NO/install.lang b/htdocs/langs/nb_NO/install.lang index 7597062d7ea..596b6160c3f 100644 --- a/htdocs/langs/nb_NO/install.lang +++ b/htdocs/langs/nb_NO/install.lang @@ -9,7 +9,7 @@ // Reference language: en_US CHARSET=UTF-8 InstallEasy=Bare følg instruksjonene trinn for trinn. -MiscellanousChecks=Forutsetninger sjekk +MiscellaneousChecks=Forutsetninger sjekk DolibarrWelcome=Velkommen til Dolibarr ConfFileExists=Konfigurasjonsfil %s eksisterer. ConfFileDoesNotExists=Konfigurasjonsfil %s finnes ikke! diff --git a/htdocs/langs/nb_NO/other.lang b/htdocs/langs/nb_NO/other.lang index 451d2c47fac..8e9428dc97d 100644 --- a/htdocs/langs/nb_NO/other.lang +++ b/htdocs/langs/nb_NO/other.lang @@ -22,7 +22,7 @@ TotalSizeOfAttachedFiles=Total størrelse på vedlagte filer/dokumenter MaxSize=Maksimal størrelse AttachANewFile=Legg ved ny fil/dokument LinkedObject=Lenkede objekter -Miscellanous=Diverse +Miscellaneous=Diverse NbOfActiveNotifications=Antall påminnelser PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Vedlagt oversendes faktura __FACREF__\n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n I følge våre noteringer ser det ut til at vår faktura __FACREF__ fortsatt står ubetalt hos oss. Dersom Deres betaling har krysset denne påminnelsen ber vi Dem vennligst se bort fra denne henvendelsen. \n\n__PERSONALIZED__Med vennlig hilsen\n\n__SIGNATURE__ diff --git a/htdocs/langs/nl_BE/admin.lang b/htdocs/langs/nl_BE/admin.lang index 711478a2a6a..752ef761798 100644 --- a/htdocs/langs/nl_BE/admin.lang +++ b/htdocs/langs/nl_BE/admin.lang @@ -810,7 +810,7 @@ GeneratedPasswordDesc = Definieer hier de regel die u wilt gebruiken voor het ge DictionnaryDesc = Definieer hier alle referentie data. U kunt vooraf gedefinieerde waarde met de jouwe. ConstDesc = Deze pagina kunt u alle andere parameters die niet beschikbaar zijn in de voorgaande pagina's. Ze zijn voorbehouden parameters voor geavanceerde ontwikkelaars of voor troubleshouting. OnceSetupFinishedCreateUsers = Waarschuwing, u bent een Dolibarr administrator gebruiker. Administrators worden gebruikt voor het configureren van Dolibarr. Voor een normaal gebruik van Dolibarr wordt aangeraden om gebruik te maken van een niet-administrator gebruiker. Deze kan aangemaakt worden in het menu "Gebruikers en Groepen". -MiscellanousDesc = Definieer hier alle andere parameters die betrekking hebben op veiligheid. +MiscellaneousDesc = Definieer hier alle andere parameters die betrekking hebben op veiligheid. LimitsSetup = Grenzen / Precision setup LimitsDesc = U kunt definiëren grenzen, preciseringen en optimalisatie gebruikt door Dolibarr hier MAIN_MAX_DECIMALS_UNIT = Max decimalen voor eenheidsprijzen @@ -890,7 +890,7 @@ DocumentModelOdt = WatermarkOnDraft = CompanyIdProfChecker = MustBeUnique = Moet uniek zijn? -Miscellanous = Diverse +Miscellaneous = Diverse ##### Webcal setup ##### = WebCalSetup = Webcalendar link setup WebCalSyncro = Toevoegen Dolibarr evenementen WebCalendar diff --git a/htdocs/langs/nl_BE/install.lang b/htdocs/langs/nl_BE/install.lang index 6c013aa58c8..6bf989f5dc8 100644 --- a/htdocs/langs/nl_BE/install.lang +++ b/htdocs/langs/nl_BE/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - nl_BE - install CHARSET=UTF-8 InstallEasy=We hebben geprobeerd om de Dolibarr installatie zo eenvoudig mogelijk te maken. Volg de instructies stap voor stap. -MiscellanousChecks=Vereisten controleren +MiscellaneousChecks=Vereisten controleren DolibarrWelcome=Welkom bij Dolibarr ConfFileExists=Configuratiebestand %s bestaat. ConfFileDoesNotExists=Configuratiebestand %s bestaat niet! diff --git a/htdocs/langs/nl_BE/other.lang b/htdocs/langs/nl_BE/other.lang index 11bb7c4eb67..10913878f40 100644 --- a/htdocs/langs/nl_BE/other.lang +++ b/htdocs/langs/nl_BE/other.lang @@ -13,7 +13,7 @@ TotalSizeOfAttachedFiles=Totale omvang van de bijgevoegde bestanden / documenten MaxSize=Maximale grootte AttachANewFile=Voeg een nieuw bestand / document toe LinkedObject=Gekoppeld object -Miscellanous=Diversen +Miscellaneous=Diversen NbOfActiveNotifications=Aantal aanmeldingen DemoDesc=Dolibarr is geen compacte ERP maar is opgebouwd uit verschillende functionele modules. Een demo waarin alle modules zijn geactiveerd heeft geen zin, omdat niet alle modules in praktijk worden gebruikt. Het kan echter zijn dat alle modules wel worden gebruikt, dus zijn er verschillende demo-profielen beschikbaar. ChooseYourDemoProfil=Kies een demo profiel die overeenkomt met uw activiteit ... diff --git a/htdocs/langs/nl_NL/admin.lang b/htdocs/langs/nl_NL/admin.lang index 5fe48ac0ab6..59259ffdb91 100644 --- a/htdocs/langs/nl_NL/admin.lang +++ b/htdocs/langs/nl_NL/admin.lang @@ -776,7 +776,7 @@ GeneratedPasswordDesc = Stel hier de regel in die u wilt gebruiken voor het gene DictionnaryDesc = Stel hier alle constanten in. U kunt vooraf ingestelde waarden aanpassen naar de uwe. ConstDesc = Op deze pagina vint u alle andere instellingen die niet beschikbaar zijn in de voorgaande pagina's. Ze zijn voorbehouden instellingen voor geavanceerde ontwikkelaars of voor 'troubleshouting'. OnceSetupFinishedCreateUsers = Waarschuwing, u bent een Dolibarr beheerder. Beheerdersaccounts worden gebruikt voor de installatie van Dolibarr. Voor een normaal gebruik van Dolibarr, wordt aangeraden gebruik te maken van een niet-beheerders account, aangemaakt onder: Gebruikers & Groepen menu. -MiscellanousDesc = Stel hier alle andere instellingen in die betrekking hebben op veiligheid. +MiscellaneousDesc = Stel hier alle andere instellingen in die betrekking hebben op veiligheid. LimitsSetup = Limieten- en precisieinstellingen LimitsDesc = U kunt hier limieten en preciseringen die Dolibarr gebruikt instellen MAIN_MAX_DECIMALS_UNIT = Maximaal aantal decimalen voor eenheidsprijzen @@ -1282,7 +1282,7 @@ SendingMailSetup=Instellen van verzendingen via e-mail SendmailOptionNotComplete=Waarschuwing, op sommige Linux-systemen, e-mail verzenden vanaf uw e-mail, sendmail uitvoering setup moet conatins optie-ba (parameter mail.force_extra_parameters in uw php.ini-bestand). Als sommige ontvangers nooit e-mails ontvangen, probeer dit PHP parameter bewerken met mail.force_extra_parameters =-ba). CompanyIdProfChecker=Professionele Id unieke MustBeUnique=Moet uniek zijn? -Miscellanous=Diversen +Miscellaneous=Diversen // STOP - Lines generated via autotranslator.php tool (2011-10-10 02:13:00). diff --git a/htdocs/langs/nl_NL/install.lang b/htdocs/langs/nl_NL/install.lang index b6bccb5d049..165e4e610be 100644 --- a/htdocs/langs/nl_NL/install.lang +++ b/htdocs/langs/nl_NL/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - nl_NL - install CHARSET = UTF-8 InstallEasy = Volg simpelweg stap voor stap de instructies -MiscellanousChecks = Vereisten controle +MiscellaneousChecks = Vereisten controle DolibarrWelcome = Welkom bij Dolibarr ConfFileExists = Configuratiebestand %s bestaat. ConfFileDoesNotExists = Configuratiebestand %s bestaat niet! diff --git a/htdocs/langs/nl_NL/other.lang b/htdocs/langs/nl_NL/other.lang index e2e7fba77f2..a7289d9e59a 100644 --- a/htdocs/langs/nl_NL/other.lang +++ b/htdocs/langs/nl_NL/other.lang @@ -23,7 +23,7 @@ TotalSizeOfAttachedFiles = Totale omvang van de bijgevoegde bestanden / document MaxSize = Maximale grootte AttachANewFile = Voeg een nieuw bestand / document bij LinkedObject = Gekoppeld object -Miscellanous = Diversen +Miscellaneous = Diversen NbOfActiveNotifications = Aantal kennisgevingen PredefinedMailTest = Dit is een test e-mail.\nDe twee lijnen worden gescheiden door een harde return. PredefinedMailTestHtml = Dit is een test e-mail (het woord test moet vetgedrukt worden weergegeven).
De twee lijnen worden gescheiden door een harde return. diff --git a/htdocs/langs/pl_PL/admin.lang b/htdocs/langs/pl_PL/admin.lang index 1817660d665..f64a3185ca4 100644 --- a/htdocs/langs/pl_PL/admin.lang +++ b/htdocs/langs/pl_PL/admin.lang @@ -600,7 +600,7 @@ GeneratedPasswordDesc=Określ tutaj reguły, które chcesz użyć do wygenerowan DictionnaryDesc=Określ tutaj wszystkie odniesienia danych. Możesz zakończyć predefiniowane wartości Ciebie. ConstDesc=Ta strona pozwala edytować wszystkie inne parametry nie są dostępne w poprzedniej strony. Są one zastrzeżone dla zaawansowanych parametrów deweloperzy lub troubleshouting. OnceSetupFinishedCreateUsers=Ostrzeżenie, jesteś Dolibarr administratora użytkownika. Administrator użytkowników wykorzystywane są do konfiguracji Dolibarr. Dla Zazwyczaj korzystanie z Dolibarr, zaleca się używać nieujemnych administratora użytkownika tworzone Użytkownicy i grupy menu. -MiscellanousDesc=Określ tutaj wszystkie inne parametry związane z bezpieczeństwem. +MiscellaneousDesc=Określ tutaj wszystkie inne parametry związane z bezpieczeństwem. LimitsSetup=Ograniczenia / Precision konfiguracji LimitsDesc=Można określić limity, doprecyzowanie i optymalizacje stosowane przez Dolibarr tutaj MAIN_MAX_DECIMALS_UNIT=Max dziesiętnych na ceny jednostkowe @@ -1268,7 +1268,7 @@ SendmailOptionNotComplete=Uwaga, w niektórych systemach Linux, aby wysłać e-m SendmailOptionMayHurtBuggedMTA=Funkcja wysyłania wiadomości za pomocą metody "PHP mail bezpośrednie" wygeneruje wiadomość e-mail, które mogą nie być prawidłowo przetwarzany przez niektórych serwerach odbieraniem poczty. Powoduje to, że niektóre maile nie mogą być odczytywane przez ludzi hostowanych przez thoose podsłuchu platform. Jest tak w przypadku niektórych dostawców internetowych (np.: Orange w Francji). To nie jest problem w Dolibarr ani w PHP, ale na otrzymaniu serwera poczty jest. Można jednak dodać MAIN_FIX_FOR_BUGGED_MTA opcji do 1 w konfiguracji - inne zmiany Dolibarr aby tego uniknąć. Jednak może wystąpić problem z innych serwerów, które ścisłego przestrzegania standardowych SMTP. Innym rozwiązaniem (zaleciły) jest użycie metody "SMTP gniazdo biblioteki", który ma wady. CompanyIdProfChecker=Profesjonalny Identyfikator unikalny MustBeUnique=Musi być wyjątkowa? -Miscellanous=Różne +Miscellaneous=Różne ContractsSetup=Konfiguracja modułu umowy ContractsNumberingModules=Kontrakty numerowania modułów AdherentLoginRequired=Zarządzanie logowania dla każdego członka diff --git a/htdocs/langs/pl_PL/install.lang b/htdocs/langs/pl_PL/install.lang index aac038cf676..69765ee10b5 100644 --- a/htdocs/langs/pl_PL/install.lang +++ b/htdocs/langs/pl_PL/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - pl_PL - install CHARSET=UTF-8 InstallEasy=Staraliśmy się by instalacja Dolibarra była tak prosta jak to możliwe. Postępuj wg instrukcji krok po kroku. -MiscellanousChecks=Sprawdzenie wymagań +MiscellaneousChecks=Sprawdzenie wymagań DolibarrWelcome=Witaj w Dolibarrze ConfFileExists=Plik konfiguracyjny %s istnieje. ConfFileDoesNotExists=Plik konfiguracyjny %s nie istnieje! @@ -213,7 +213,7 @@ MigrationDeliveryAddress=Aktualizacja adresu dostarczenia przesyłki // Reference language: en_US CHARSET=UTF-8 InstallEasy=Bare følg instruksjonene trinn for trinn. -MiscellanousChecks=Forutsetninger sjekk +MiscellaneousChecks=Forutsetninger sjekk DolibarrWelcome=Velkommen til Dolibarr ConfFileExists=Konfigurasjonsfil %s eksisterer. ConfFileDoesNotExists=Konfigurasjonsfil %s finnes ikke! diff --git a/htdocs/langs/pl_PL/other.lang b/htdocs/langs/pl_PL/other.lang index 9caefe6bc0f..f27b2e78fa8 100644 --- a/htdocs/langs/pl_PL/other.lang +++ b/htdocs/langs/pl_PL/other.lang @@ -25,7 +25,7 @@ TotalSizeOfAttachedFiles=Całkowita wielkość załączonych plików / dokument MaxSize=Maksymalny rozmiar AttachANewFile=Załącz nowy plik / dokument LinkedObject=Związany obiektu -Miscellanous=Miscellaneous +Miscellaneous=Miscellaneous NbOfActiveNotifications=Liczba zgłoszeń ChooseYourDemoProfil=Wybierz demo, które pasują do profilu działalności ... DemoFundation=Zarządzanie użytkowników o fundacji diff --git a/htdocs/langs/pt_BR/admin.lang b/htdocs/langs/pt_BR/admin.lang index d001e6fb84c..2dc05d0d1e5 100644 --- a/htdocs/langs/pt_BR/admin.lang +++ b/htdocs/langs/pt_BR/admin.lang @@ -662,7 +662,7 @@ GeneratedPasswordDesc=Indique aqui que norma quer utilizar para Gerar as Senhas DictionnaryDesc=Indique aqui os dados de referencia. pode completar/modificar os dados predefinidos com os seus ConstDesc=qualquer outro parâmetro não editável em páginas anteriores OnceSetupFinishedCreateUsers=Atenção, está baixo de uma conta de administrador de Dolibarr. os administradores se utilizam para configurar a Dolibarr. Para um uso corrente de Dolibarr, recomenda-se utilizar uma conta não administrador criada a partir do menu "Usuários e grupos" -MiscellanousDesc=Defina aqui os Outros parâmetros relacionados com a segurança. +MiscellaneousDesc=Defina aqui os Outros parâmetros relacionados com a segurança. LimitsSetup=configuração de limites e precisões LimitsDesc=pode definir aqui os limites e precisões utilizados por Dolibarr MAIN_MAX_DECIMALS_UNIT=Casas decimais máximas para os preços unitários diff --git a/htdocs/langs/pt_BR/install.lang b/htdocs/langs/pt_BR/install.lang index c398d91fcbd..0a0f83e1d50 100644 --- a/htdocs/langs/pt_BR/install.lang +++ b/htdocs/langs/pt_BR/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - fr_PT - install CHARSET=UTF-8 InstallEasy=Tentámos tornar a instalação do Dolibarr o mais fácil possível. É favor seguir as instruções passo-a-passo. -MiscellanousChecks=Pré-requisitos check +MiscellaneousChecks=Pré-requisitos check DolibarrWelcome=Bem-vindo ao Dolibarr ConfFileExists=O arquivo de configuração conf.php existe. ConfFileDoesNotExists=Arquivo de configuração %s não existe! diff --git a/htdocs/langs/pt_BR/other.lang b/htdocs/langs/pt_BR/other.lang index 688fd19e32a..cb9fae3cdf9 100755 --- a/htdocs/langs/pt_BR/other.lang +++ b/htdocs/langs/pt_BR/other.lang @@ -17,7 +17,7 @@ TotalSizeOfAttachedFiles=Tamanho Total dos Arquivos/Documentos Anexos MaxSize=Tamanho Máximo AttachANewFile=Adicionar Novo Arquivo/Documento LinkedObject=Arquivo Anexo -Miscellanous=Diversos +Miscellaneous=Diversos NbOfActiveNotifications=Número Notificações PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Estimados senhores,\n\nem anexo enviamos a nossa fatura __FACREF__ .\n\nAtenciosamente\n\n PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Estimados senhores,\n\ninformamos que a fatura __FACREF__ nos consta como não paga. Por favor revisar a fatura anexada e nos dar uma posicao.\n\nAtenciosamente\n\n diff --git a/htdocs/langs/pt_PT/admin.lang b/htdocs/langs/pt_PT/admin.lang index 101386ac926..a3de0cb68dd 100644 --- a/htdocs/langs/pt_PT/admin.lang +++ b/htdocs/langs/pt_PT/admin.lang @@ -528,7 +528,7 @@ MenuUpgrade = Upgrade / Ampliar MessageLogin = Mensagem do login MessageOfDay = Mensagem do día MinLength = Prazo mínimo -MiscellanousDesc = Defina aquí os Outros parâmetros relacionados com a segurança. +MiscellaneousDesc = Defina aquí os Outros parâmetros relacionados com a segurança. ModelModules = Documentos modelos ModifMenu = Modificação do menu ModifyProductDescAbility = Personalização das descrições dos produtos nos formularios @@ -1207,7 +1207,7 @@ MAIN_PROXY_USER = Entrar para usar o servidor proxy MAIN_SMS_SENDMODE = Método a ser usado para enviar SMS MenuSmartphoneManager = Gestor de menu Smartphone MenuUseLayout = Faça menu vertical (javascript opção não deve ser desativado) -Miscellanous = Diversos +Miscellaneous = Diversos Module105Desc = Mailman ou Spip interface para o módulo membro Module105Name = Mailman e Sip Module50000Desc = Módulo para oferecer uma página de pagamento online por cartão de crédito com paybox diff --git a/htdocs/langs/pt_PT/install.lang b/htdocs/langs/pt_PT/install.lang index 4110c879efe..6d9829ca49f 100644 --- a/htdocs/langs/pt_PT/install.lang +++ b/htdocs/langs/pt_PT/install.lang @@ -149,7 +149,7 @@ MigrationStockDetail=Atualizar stock valor dos produtos MigrationSuccessfullUpdate=Actualização bem sucedida MigrationSupplierOrder=Migração de dados de Fornecedores' ordens MigrationUpdateFailed=Falha na atualização processo -MiscellanousChecks=Pré-requisitos check +MiscellaneousChecks=Pré-requisitos check NextStepMightLastALongTime=etapa atual pode durar vários minutos. Por favor, aguarde até a próxima tela é mostrada completamente antes de continuar. NotAvailable=Não disponível OpenBaseDir=parametr openbasedir PHP diff --git a/htdocs/langs/pt_PT/other.lang b/htdocs/langs/pt_PT/other.lang index 8fb2274b40d..78666607153 100644 --- a/htdocs/langs/pt_PT/other.lang +++ b/htdocs/langs/pt_PT/other.lang @@ -14,7 +14,7 @@ TotalSizeOfAttachedFiles=Tamanho Total dos Ficheiros/Documentos anexos MaxSize=Tamanho Máximo AttachANewFile=Adicionar Novo Ficheiro/documento LinkedObject=Objecto adjudicado -Miscellanous=Diversos +Miscellaneous=Diversos NbOfActiveNotifications=Número Notificações PredefinedMailContentSendInvoice=__CONTACTCIVNAME__ \n\n Juntamos a factura __FACREF__\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ PredefinedMailContentSendInvoiceReminder=__CONTACTCIVNAME__ \n\n Damos conhecimento que a factura __FACREF__ parece não estar paga. Segue em anexo, para que possa rever.\n\n__PERSONALIZED__Cordialmente\n\n__SIGNATURE__ diff --git a/htdocs/langs/ro_RO/admin.lang b/htdocs/langs/ro_RO/admin.lang index e049b78fbbd..04bd74a5784 100644 --- a/htdocs/langs/ro_RO/admin.lang +++ b/htdocs/langs/ro_RO/admin.lang @@ -598,7 +598,7 @@ GeneratedPasswordDesc=Definiţi aici regulă care doriţi să-l utilizaţi pentr DictionnaryDesc=Definiţi aici toate datele de referinţă. Puteţi completa predefinite valoarea cu a ta. ConstDesc=Această pagină vă permite să editaţi toate alţi parametri care nu sunt disponibile în ultimele pagini. Acestea sunt rezervate pentru parametrii avansat dezvoltatorii sau pentru troubleshouting. OnceSetupFinishedCreateUsers=Atenţie, esti un utilizator Dolibarr administrator. Administrator utilizatori sunt utilizate pentru a instala Dolibarr. Pentru o utilizare obişnuită a Dolibarr, este recomandat să folosiţi un administrator de utilizator creat de utilizatori şi grupuri de meniu. -MiscellanousDesc=Definiţi parametrii de aici toate celelalte legate de securitate. +MiscellaneousDesc=Definiţi parametrii de aici toate celelalte legate de securitate. LimitsSetup=Limitele / precizie setup LimitsDesc=Puteţi defini limitele, precisions şi optimisations utilizate de către Dolibarr aici MAIN_MAX_DECIMALS_UNIT=Max zecimale pentru unitate de preţuri @@ -1269,7 +1269,7 @@ SendmailOptionNotComplete=Atenţie, pe unele sisteme Linux, pentru a trimite e-m SendmailOptionMayHurtBuggedMTA=Caracteristică pentru a trimite mesaje utilizând metoda "mail PHP directă" va genera un mesaj e-mail care nu s-ar putea să fie corect interpretat de către unele servere de e-mail primit. Rezultatul este că unele mail-uri nu pot fi citite de persoane găzduite de platforme thoose bugged. Este cazul unor furnizori de Internet (Ex: Orange în Franţa). Aceasta nu este o problemă în Dolibarr nici în PHP, dar primesc pe serverul de poştă electronică. Puteţi adăuga toate acestea, opţiunea MAIN_FIX_FOR_BUGGED_MTA la 1 în configurare - pentru a modifica alte Dolibarr pentru a evita acest lucru. Cu toate acestea, este posibil să aveţi probleme cu alte servere care sens strict standard SMTP. Altă soluţie (recommanded) este de a utiliza metoda "SMTP socket bibliotecă", care nu are dezavantaje. CompanyIdProfChecker=Professional ID unic MustBeUnique=Trebuie să fie unice? -Miscellanous=Diverse +Miscellaneous=Diverse ContractsSetup=Contracte de modul de configurare ContractsNumberingModules=Contracte de numerotare module AdherentLoginRequired=Gestiona un Autentificare pentru fiecare membru diff --git a/htdocs/langs/ro_RO/install.lang b/htdocs/langs/ro_RO/install.lang index bbf504158fc..84310cb029b 100644 --- a/htdocs/langs/ro_RO/install.lang +++ b/htdocs/langs/ro_RO/install.lang @@ -754,7 +754,7 @@ GeneratedPasswordDesc=Określ tutaj reguły, które chcesz użyć do wygenerowan DictionnaryDesc=Określ tutaj wszystkie odniesienia danych. Możesz zakończyć predefiniowane wartości Ciebie. ConstDesc=Ta strona pozwala edytować wszystkie inne parametry nie są dostępne w poprzedniej strony. Są one zastrzeżone dla zaawansowanych parametrów deweloperzy lub troubleshouting. OnceSetupFinishedCreateUsers=Ostrzeżenie, jesteś Dolibarr administratora użytkownika. Administrator użytkowników wykorzystywane są do konfiguracji Dolibarr. Dla Zazwyczaj korzystanie z Dolibarr, zaleca się używać nieujemnych administratora użytkownika tworzone Użytkownicy i grupy menu. -MiscellanousDesc=Określ tutaj wszystkie inne parametry związane z bezpieczeństwem. +MiscellaneousDesc=Określ tutaj wszystkie inne parametry związane z bezpieczeństwem. LimitsSetup=Ograniczenia / Precision konfiguracji LimitsDesc=Można określić limity, doprecyzowanie i optymalizacje stosowane przez Dolibarr tutaj MAIN_MAX_DECIMALS_UNIT=Max dziesiętnych na ceny jednostkowe @@ -804,7 +804,7 @@ WebCalAddE // START - Lines generated via autotranslator.php tool (2012-02-29 17:23:15). // Reference language: en_US -> ro_RO InstallEasy=Doar urmaţi instrucţiunile pas cu pas. -MiscellanousChecks=Cerinţe preliminare a verifica +MiscellaneousChecks=Cerinţe preliminare a verifica DolibarrWelcome=Bine ati venit la Dolibarr ConfFileExists=%s fişierul de configurare există. ConfFileDoesNotExists=%s fişier de configurare nu exista! diff --git a/htdocs/langs/ro_RO/other.lang b/htdocs/langs/ro_RO/other.lang index 3b46ab31625..0527aab3ee8 100644 --- a/htdocs/langs/ro_RO/other.lang +++ b/htdocs/langs/ro_RO/other.lang @@ -23,7 +23,7 @@ TotalSizeOfAttachedFiles=Total marimea ataşat fişiere / documente MaxSize=Mărimea maximă a AttachANewFile=Ataşaţi un fişier nou / document LinkedObject=Legate de obiectul -Miscellanous=Diverse +Miscellaneous=Diverse NbOfActiveNotifications=Număr de notificări ChooseYourDemoProfil=Alegeţi demo care se potrivesc cu profilul de activitate ... DemoFundation=Gestionare membrii unui Fundaţia diff --git a/htdocs/langs/ru_RU/admin.lang b/htdocs/langs/ru_RU/admin.lang index 9f051c0f3ba..db77c166cf3 100644 --- a/htdocs/langs/ru_RU/admin.lang +++ b/htdocs/langs/ru_RU/admin.lang @@ -597,7 +597,7 @@ GeneratedPasswordDesc=Определить здесь правила, котор DictionnaryDesc=Определить здесь все ссылки данные. Вы можете заполнить заранее стоимость с вами. ConstDesc=На этой странице можно отредактировать все остальные параметры не доступны в предыдущих страницах. Они защищены параметров для продвинутых разработчиков или troubleshouting. OnceSetupFinishedCreateUsers=Внимание, вы Dolibarr администратора пользователю. Администратор пользователей используются для установки Dolibarr. Для обычного использования Dolibarr, рекомендуется для использования, не администратор пользователя создается из пользователей И группах меню. -MiscellanousDesc=Определить здесь все другие параметры, связанные с безопасностью. +MiscellaneousDesc=Определить здесь все другие параметры, связанные с безопасностью. LimitsSetup=Пределы / Точная настройка LimitsDesc=Вы можете определить лимиты, уточнения и optimisations используемой Dolibarr здесь MAIN_MAX_DECIMALS_UNIT=Макс десятичных цен за единицу @@ -1251,7 +1251,7 @@ SendingMailSetup=Настройка отправки по электронной SendmailOptionNotComplete=Предупреждение, на некоторых системах Linux, для отправки электронной почты из электронной почты, Sendmail выполнения установки должны conatins опцию-ба (параметр mail.force_extra_parameters в файле php.ini). Если некоторые получатели не получают электронные письма, попытке изменить этот параметр с PHP mail.force_extra_parameters =-ба). CompanyIdProfChecker=Профессиональные Id уникальным MustBeUnique=Должно быть уникальным? -Miscellanous=Разнообразный +Miscellaneous=Разнообразный ContractsSetup=Контракты модуль установки ContractsNumberingModules=Контракты нумерации модулей AdherentLoginRequired=Управление Логин для каждого члена diff --git a/htdocs/langs/ru_RU/install.lang b/htdocs/langs/ru_RU/install.lang index c1697be23ba..82b04b7c62a 100644 --- a/htdocs/langs/ru_RU/install.lang +++ b/htdocs/langs/ru_RU/install.lang @@ -10,7 +10,7 @@ // Reference language: en_US CHARSET=UTF-8 InstallEasy=Мы постарались сделать Dolibarr настройки настолько прост, насколько это возможно. Просто следуйте инструкциям, шаг за шагом. -MiscellanousChecks=Условия проверки +MiscellaneousChecks=Условия проверки DolibarrWelcome=Добро пожаловать на Dolibarr ConfFileExists=Файл конфигурации %s существует. ConfFileDoesNotExists=Файл конфигурации %s не существует! @@ -197,7 +197,7 @@ MigrationUpdateFailed=Сбой процесса обновления // Reference language: en_US CHARSET=UTF-8 InstallEasy=Bare følg instruksjonene trinn for trinn. -MiscellanousChecks=Forutsetninger sjekk +MiscellaneousChecks=Forutsetninger sjekk DolibarrWelcome=Velkommen til Dolibarr ConfFileExists=Konfigurasjonsfil %s eksisterer. ConfFileDoesNotExists=Konfigurasjonsfil %s finnes ikke! diff --git a/htdocs/langs/ru_RU/other.lang b/htdocs/langs/ru_RU/other.lang index b68df84422a..e72505488e3 100644 --- a/htdocs/langs/ru_RU/other.lang +++ b/htdocs/langs/ru_RU/other.lang @@ -23,7 +23,7 @@ TotalSizeOfAttachedFiles=Общий размер присоединенных ф MaxSize=Максимальный размер AttachANewFile=Присоединить новый файл / документ LinkedObject=Связанные объект -Miscellanous=Разное +Miscellaneous=Разное NbOfActiveNotifications=Количество уведомлений ChooseYourDemoProfil=Выберите демо-профиль, которые соответствуют Вашей деятельности ... DemoFundation=Управление членов Фонда diff --git a/htdocs/langs/ru_UA/install.lang b/htdocs/langs/ru_UA/install.lang index 45d05d6eb5a..fd4081e26fe 100644 --- a/htdocs/langs/ru_UA/install.lang +++ b/htdocs/langs/ru_UA/install.lang @@ -9,7 +9,7 @@ // Reference language: en_US -> ru_UA CHARSET=UTF-8 InstallEasy=Просто следуйте инструкциям шаг за шагом. -MiscellanousChecks=Проверка предварительных условий +MiscellaneousChecks=Проверка предварительных условий DolibarrWelcome=Добро пожаловать в Dolibarr ConfFileExists=%s конфигурационный файл существует. ConfFileDoesNotExists=%s конфигурационного файла не существует! diff --git a/htdocs/langs/sl_SI/admin.lang b/htdocs/langs/sl_SI/admin.lang index 6c83d1d141e..c59beab6ab0 100644 --- a/htdocs/langs/sl_SI/admin.lang +++ b/htdocs/langs/sl_SI/admin.lang @@ -793,7 +793,7 @@ GeneratedPasswordDesc = Tukaj določite, katero pravilo želite uporabiti za gen DictionnaryDesc = Tukaj definirate vse referenčne podatke. Vnaprej določene vrednosti lahko dopolnite z vašimi. ConstDesc = Ta stran omogoča urejanje vseh ostalih parametrov, ki niso na voljo na prejšnjih straneh. To so rezervirani parametri za napredne razvijalce ali za odpravljanje težav. OnceSetupFinishedCreateUsers = Pozor, vi ste Dolibarr administrator. Administrator lahko nastavlja Dolibarr. Za navadno uporabo aplikacije Dolibarr, se priporočajo nastavitve navadnega uporabnika, ki nima administratorskih pravic in ga kreirate preko menija 'Uporabniki & Skupine'. -MiscellanousDesc = Tukaj definirate vse ostale parametre, povezane z varnostjo. +MiscellaneousDesc = Tukaj definirate vse ostale parametre, povezane z varnostjo. LimitsSetup = Nastavitve omejitev/natančnosti LimitsDesc = Tukaj lahko definirate omejitve, natančnost in optimizacije, ki jih uporablja Dolibarr MAIN_MAX_DECIMALS_UNIT = Največje število decimalk za ceno enote @@ -1288,7 +1288,7 @@ ExtraFieldHasWrongValue=Pripišejo %s ima napačno vrednost. SendmailOptionMayHurtBuggedMTA=Funkcija za pošiljanje pošte z uporabo metode "PHP mail DIRECT" bo ustvarila poštno sporočilo, ki ga ni mogoče pravilno razčleniti z nekaterimi, ki so prejemali poštnih strežnikov. Posledica tega je, da so nekatere pošte ne berejo ljudje, ki jih gosti thoose bugged platforme. To je veljalo za nekaj internetnih ponudnikov (npr.: Orange v Franciji). To ni problem v Dolibarr niti v PHP, ampak na prejemanje poštni strežnik. Lahko pa dodate možnost MAIN_FIX_FOR_BUGGED_MTA 1. v setup - drugo spremeniti Dolibarr, da bi se temu izognili. Vendar pa lahko pride do težav z drugimi strežniki, ki spoštujejo strogo standardni SMTP. Druga rešitev (priporočile) je uporaba metode "SMTP socket knjižnice", ki nima slabosti. CompanyIdProfChecker=Strokovno Id edinstven MustBeUnique=Mora biti edinstven? -Miscellanous=Razno +Miscellaneous=Razno ServiceSetup=Storitve modul nastavitev ProductServiceSetup=Izdelki in storitve moduli za nastavitev ViewProductDescInThirdpartyLanguageAbility=Vizualizacija Poimenovanja izdelkov v thirdparty jeziku diff --git a/htdocs/langs/sl_SI/install.lang b/htdocs/langs/sl_SI/install.lang index ecc44497626..02a9f807fbb 100644 --- a/htdocs/langs/sl_SI/install.lang +++ b/htdocs/langs/sl_SI/install.lang @@ -1,7 +1,7 @@ # Dolibarr language file - en_US - install = CHARSET = UTF-8 InstallEasy = Sledite navodilom korak za korakom. -MiscellanousChecks = Kontrola pogojev +MiscellaneousChecks = Kontrola pogojev DolibarrWelcome = Dobrodošli v Dolibarr ConfFileExists = Konfiguracijska datoteka %s že obstaja. ConfFileDoesNotExists = Konfiguracijska datoteka %s ne obstaja ! diff --git a/htdocs/langs/sl_SI/other.lang b/htdocs/langs/sl_SI/other.lang index a9af5499b8d..eeaaa04bbc3 100644 --- a/htdocs/langs/sl_SI/other.lang +++ b/htdocs/langs/sl_SI/other.lang @@ -59,7 +59,7 @@ TotalSizeOfAttachedFiles = Skupna velikost pripetih datotek/dokumentov MaxSize = Največja velikost AttachANewFile = Pripni novo datoteko/dokument LinkedObject = Povezani objekti -Miscellanous = Razno +Miscellaneous = Razno NbOfActiveNotifications = Število sporočil WarningInstallDirExists = Pozor, instalacijska mapa (htdocs/install) še vedno obstaja. To je velika varnostna luknja. Odstranite jo, takoj ko je mogoče. WarningUntilDirRemoved = Vsa varnostna opozorila (ki jih vidi samo uporabnik admin) bodo ostala aktivna, dokler je prisotna ranljivost(oz. je konstanta MAIN_REMOVE_INSTALL_WARNING dodana v Nastavitev->Ostale nastavitve). diff --git a/htdocs/langs/sv_SE/admin.lang b/htdocs/langs/sv_SE/admin.lang index e7036e47db4..325debe46c5 100644 --- a/htdocs/langs/sv_SE/admin.lang +++ b/htdocs/langs/sv_SE/admin.lang @@ -740,7 +740,7 @@ GeneratedPasswordDesc=Ange här vilken regel du vill använda för att generera DictionnaryDesc=Ange här alla hänvisningar data seten. Du kan fylla i fördefinierade värde med din. ConstDesc=Denna sida kan du redigera alla andra parametrar som inte fanns i tidigare sidor. De är reserverade parametrar för avancerade utvecklare eller troubleshouting. OnceSetupFinishedCreateUsers=Varning, du är en Dolibarr administratör. Administratör användare används för att ställa in Dolibarr. För en vanlig användning av Dolibarr, rekommenderas att använda en icke administratör skapas från Användare & Grupper menyn. -MiscellanousDesc=Ange här alla andra parametrar som rör säkerhet. +MiscellaneousDesc=Ange här alla andra parametrar som rör säkerhet. LimitsSetup=Gränser / Precision setup LimitsDesc=Du kan definiera gränser, preciseringar och optimeringar som används av Dolibarr här MAIN_MAX_DECIMALS_UNIT=Max decimaler för priserna per enhet @@ -1254,7 +1254,7 @@ SendmailOptionNotComplete=Varning, på vissa Linux-system, för att skicka e-pos SendmailOptionMayHurtBuggedMTA=Funktion för att skicka e-post med hjälp av metoden "PHP mail direkt" kommer att generera ett e-postmeddelande som kanske inte korrekt tolkas av vissa som får e-postservrar. Resultatet är att vissa post inte kan läsas av människor som tillhandahålls av thoose avlyssnat plattformar. Det är fallet för vissa Internetleverantörer (Ex: Orange i Frankrike). Detta är inte ett problem till Dolibarr heller i PHP, men på inkommande e-post server. Du kan dock lägga möjlighet MAIN_FIX_FOR_BUGGED_MTA till 1 i Setup - andra att ändra Dolibarr att undvika detta. Du kan dock uppleva problem med andra servrar som strikt respektera SMTP standard. Den andra lösningen (Rekomenderad) är att använda metoden "SMTP socket bibliotek" som inte har några nackdelar. CompanyIdProfChecker=Professionell Id unik MustBeUnique=Måste vara unikt? -Miscellanous=Övrigt +Miscellaneous=Övrigt ClickToDialUrlDesc=Url anropas när ett klick på telefon picto görs. I URL kan du använda taggar
__PHONETO__ Som kommer att ersättas med telefonnumret för personen att ringa
__PHONEFROM__ Som ska ersättas med telefonnummer att ringa person (er)
__LOGIN__ Som ska ersättas med clicktodial inloggning (definierad på ditt användarnamn kort)
__PASS__ Som ska ersättas med ditt clicktodial lösenord (definierad på ditt användarnamn kort). ContractsSetup=Kontrakt modul konfiguration ContractsNumberingModules=Kontrakt numrering moduler diff --git a/htdocs/langs/sv_SE/install.lang b/htdocs/langs/sv_SE/install.lang index 27b3611032b..66ae3f7e504 100644 --- a/htdocs/langs/sv_SE/install.lang +++ b/htdocs/langs/sv_SE/install.lang @@ -9,7 +9,7 @@ // Reference language: en_US CHARSET=UTF-8 InstallEasy=Följ bara instruktionerna steg för steg. -MiscellanousChecks=Förutsättningarna läs +MiscellaneousChecks=Förutsättningarna läs DolibarrWelcome=Välkommen till Dolibarr ConfFileExists=Konfigurationsfilen %s finns. ConfFileDoesNotExists=Konfigurationsfilen %s finns inte! diff --git a/htdocs/langs/sv_SE/other.lang b/htdocs/langs/sv_SE/other.lang index 191f95768a5..6871665e7b0 100644 --- a/htdocs/langs/sv_SE/other.lang +++ b/htdocs/langs/sv_SE/other.lang @@ -28,7 +28,7 @@ TotalSizeOfAttachedFiles=Total storlek på bifogade filer / dokument MaxSize=Maximal storlek AttachANewFile=Bifoga en ny fil / dokument LinkedObject=Länkat objekt -Miscellanous=Diverse +Miscellaneous=Diverse NbOfActiveNotifications=Antal anmälningar PredefinedMailTest=Detta är en test post. \ NDet två linjerna är åtskilda av en vagnretur. PredefinedMailTestHtml=Detta är en test post (ordet Provningen skall i fetstil).
De två linjerna är åtskilda av en vagnretur. diff --git a/htdocs/langs/tr_TR/admin.lang b/htdocs/langs/tr_TR/admin.lang index e0be1ed27fe..75bc24ba808 100755 --- a/htdocs/langs/tr_TR/admin.lang +++ b/htdocs/langs/tr_TR/admin.lang @@ -883,7 +883,7 @@ GeneratedPasswordDesc=Eğer otomatik olarak yeni bir parola oluşturmak istersen DictionnaryDesc= Burada bütün referans verilerini tanımlayın. Önceden tanımlanmış bilgilere sizinkileri de ekleyebilirsiniz. ConstDesc=Bu sayfa, önceki sayfalarda mevcut olmayan diğer tüm parametreleri düzenleme olanağı sağlar. İleri geliştiriciler veya sorunbulma için ayrılmış parametrelerdir. OnceSetupFinishedCreateUsers=Uyarı, siz bir Dolibarr yönetici kullanıcısınız. Yönetici kullanıcılar Dolibarr kurulumu yapabilir. Dolibarr’ın olağan kullanımı için, Kullanıcılar ve Gruplar menüsünden oluşturulan yönetici kullanıcı olmayan bir kullanıcının kullanılması önerilir. -MiscellanousDesc=Burada güvenlik ile ilgili diğer tüm parametreleri tanımlayın. +MiscellaneousDesc=Burada güvenlik ile ilgili diğer tüm parametreleri tanımlayın. LimitsSetup=Sınırlar/Hassasiyet ayarı LimitsDesc=Burada Dolibarr’ın kullanımı için sınırlar, hassasiyet ve optimizasyon tanımlayabilirsiniz MAIN_MAX_DECIMALS_UNIT=Birim fiyatlar ençok ondalık @@ -974,7 +974,7 @@ WatermarkOnDraft=Taslak belge üzerinde filigran CompanyIdProfChecker=Benzersiz uzman Kimliği MustBeUnique=Eşsiz olmalıdır? MustBeMandatory=Zorunlu olmalı mı ? -Miscellanous=Çeşitli +Miscellaneous=Çeşitli ##### Webcal setup ##### WebCalSetup=WebTakvim bağlantısı kurulumu WebCalSyncro=WebTakvimi için Dolibarr etkinlikleri diff --git a/htdocs/langs/tr_TR/install.lang b/htdocs/langs/tr_TR/install.lang index c4ea75fcb4b..18510fddb30 100755 --- a/htdocs/langs/tr_TR/install.lang +++ b/htdocs/langs/tr_TR/install.lang @@ -9,7 +9,7 @@ CHARSET=UTF-8 InstallEasy=Sadece adım adım talimatları izleyin. -MiscellanousChecks=Önkoşulların onayı +MiscellaneousChecks=Önkoşulların onayı DolibarrWelcome=Dolibarr'a hoşgeldiniz ConfFileExists=Yapılandırma dosyası %s var. ConfFileDoesNotExists=Yapılandırma dosyası %s yok diff --git a/htdocs/langs/tr_TR/other.lang b/htdocs/langs/tr_TR/other.lang index 9f0ffa6f878..6f30088f662 100755 --- a/htdocs/langs/tr_TR/other.lang +++ b/htdocs/langs/tr_TR/other.lang @@ -52,7 +52,7 @@ TotalSizeOfAttachedFiles=Eklenen dosyaların/belgelerin toplam boyutu MaxSize=Ençok boyut AttachANewFile=Yeni bir dosya/belge ekle LinkedObject=Bağlantılı nesne -Miscellanous=Çeşitli +Miscellaneous=Çeşitli NbOfActiveNotifications=Number of notifications PredefinedMailTest=Bu bir deneme postasıdır.\nİki satır enter tuşu ile ayrılmıştır. PredefinedMailTestHtml=Bu bir deneme postası (deneme sözcüğü koyu olmalı).
İki satır enter tuşu ile ayrılmıştır. diff --git a/htdocs/langs/zh_CN/admin.lang b/htdocs/langs/zh_CN/admin.lang index 937e3dae058..8c43783bd7b 100644 --- a/htdocs/langs/zh_CN/admin.lang +++ b/htdocs/langs/zh_CN/admin.lang @@ -731,7 +731,7 @@ GeneratedPasswordDesc=这里定义的规定,你要用来生成新的密码, DictionnaryDesc=这里所有的参考定义景致。您可以完成预定义与你的价值。 ConstDesc=此页面允许你编辑所有没有先前网页提供的其他参数。他们是保留给高级开发人员或troubleshouting参数。 OnceSetupFinishedCreateUsers=警告,你是一个Dolibarr管理员用户。管理员用户用于安装Dolibarr。对于通常使用的Dolibarr,建议使用非管理员用户从菜单中创建用户和组。 -MiscellanousDesc=定义在这里与安全有关的所有其他参数。 +MiscellaneousDesc=定义在这里与安全有关的所有其他参数。 LimitsSetup=极限/精密安装 LimitsDesc=您可以定义范围,精度和Dolibarr这里使用的最佳化 MAIN_MAX_DECIMALS_UNIT=单位价格最高为小数 @@ -1250,7 +1250,7 @@ SendmailOptionNotComplete=警告,在某些Linux系统,从您的电子邮件 SendmailOptionMayHurtBuggedMTA=功能使用方法“PHP的mail直接”发送电子邮件,将生成一个邮件,可能会不正确地解析一些接收邮件服务器。结果是不能由thoose窃听平台的托管人阅读一些邮件。这是一些互联网服务提供商(例如:在法国Orange)的情况下。这不是一个将Dolibarr也不到PHP中,但到接收邮件服务器的问题。但是,您可以选项MAIN_FIX_FOR_BUGGED_MTA添加1,进入设置 - 其他,修改Dolibarr避免这种情况。然而,你可能会遇到与其他服务器的问题,严格遵守SMTP标准。其他的解决办法(建议报告)是使用的方法“SMTP套接字库”,有没有坏处。 CompanyIdProfChecker=专业ID的唯一 MustBeUnique=必须是唯一的吗? -Miscellanous=杂项 +Miscellaneous=杂项 ContractsSetup=合同模块的设置 ContractsNumberingModules=合同编号模块 AdherentLoginRequired=管理每个成员登录 diff --git a/htdocs/langs/zh_CN/install.lang b/htdocs/langs/zh_CN/install.lang index 9685a7b9f4b..2455b15eab3 100644 --- a/htdocs/langs/zh_CN/install.lang +++ b/htdocs/langs/zh_CN/install.lang @@ -9,7 +9,7 @@ // Reference language: en_US CHARSET=UTF-8 InstallEasy=只需按照分步说明。 -MiscellanousChecks=先决条件检查 +MiscellaneousChecks=先决条件检查 DolibarrWelcome=欢迎Dolibarr ConfFileExists=配置文件%s存在。 ConfFileDoesNotExists=配置文件%s不存在! diff --git a/htdocs/langs/zh_CN/other.lang b/htdocs/langs/zh_CN/other.lang index afac5cf36a8..f26ca065c39 100644 --- a/htdocs/langs/zh_CN/other.lang +++ b/htdocs/langs/zh_CN/other.lang @@ -44,7 +44,7 @@ TotalSizeOfAttachedFiles=所附文件的总大小/文件 MaxSize=最大尺寸 AttachANewFile=附加一个新的文件/文件 LinkedObject=链接对象 -Miscellanous=杂项 +Miscellaneous=杂项 NbOfActiveNotifications=号码的通知 WarningInstallDirExists=警告,安装目录(htdocs中/安装 )依然存在。这是一个严重的安全漏洞。您应该删除它尽快。 WarningUntilDirRemoved=所有安全警告(可见由管理员用户只)将保持活跃,只要是存在的脆弱性(或常数MAIN_REMOVE_INSTALL_WARNING是在安装程序->其他设置添加)。 diff --git a/htdocs/langs/zh_TW/admin.lang b/htdocs/langs/zh_TW/admin.lang index edf18ba2584..82aabb992d5 100644 --- a/htdocs/langs/zh_TW/admin.lang +++ b/htdocs/langs/zh_TW/admin.lang @@ -739,7 +739,7 @@ GeneratedPasswordDesc=這裡定義的規定,你要用來生成新的密碼, DictionnaryDesc=您可以在這裡新定義或修改表單中會用到選項清單,如營業稅率、語系等等。 ConstDesc=此頁面允許你編輯所有沒有先前網頁提供的其他參數。他們是保留給高級開發人員或troubleshouting參數。 OnceSetupFinishedCreateUsers=警告,你是一個Dolibarr管理員用戶。管理員用戶用於安裝Dolibarr。對於通常使用的Dolibarr,建議使用非管理員用戶從菜單中創建用戶和組。 -MiscellanousDesc=定義在這裡與安全有關的所有其他參數。 +MiscellaneousDesc=定義在這裡與安全有關的所有其他參數。 LimitsSetup=限制及精準度 LimitsDesc=您可以定義範圍,精度和Dolibarr這裡使用的最佳化 MAIN_MAX_DECIMALS_UNIT=單位價格最高為小數 @@ -1262,7 +1262,7 @@ SendmailOptionNotComplete=警告,在某些Linux系統,從您的電子郵件 SendmailOptionMayHurtBuggedMTA=功能使用方法“PHP的mail直接”發送電子郵件,將生成一個郵件,可能會不正確地解析一些接收郵件服務器。結果是不能由thoose竊聽平台的託管人閲讀一些郵件。這是一些互聯網服務提供商(例如:在法國Orange)的情況下。這不是一個將Dolibarr也不到PHP中,但到接收郵件服務器的問題。但是,您可以選項MAIN_FIX_FOR_BUGGED_MTA添加1,進入設置 - 其他,修改Dolibarr避免這種情況。然而,你可能會遇到與其他服務器的問題,嚴格遵守SMTP標準。其他的解決辦法(建議報告)是使用的方法“SMTP套接字庫”,有沒有壞處。 CompanyIdProfChecker=專業術語欄位ID是否獨一無二 MustBeUnique=必須是獨一無二的ID嗎? -Miscellanous=雜項設定 +Miscellaneous=雜項設定 ContractsSetup=合同模組的設置 ContractsNumberingModules=合同編號模組 AdherentLoginRequired=管理每個成員登錄 diff --git a/htdocs/langs/zh_TW/install.lang b/htdocs/langs/zh_TW/install.lang index 192528ec126..9753c6f171c 100644 --- a/htdocs/langs/zh_TW/install.lang +++ b/htdocs/langs/zh_TW/install.lang @@ -9,7 +9,7 @@ // Reference language: en_US CHARSET=UTF-8 InstallEasy=只需按照分步說明。 -MiscellanousChecks=先決條件檢查 +MiscellaneousChecks=先決條件檢查 DolibarrWelcome=歡迎Dolibarr ConfFileExists=配置文件%s存在。 ConfFileDoesNotExists=配置文件%s不存在! diff --git a/htdocs/langs/zh_TW/other.lang b/htdocs/langs/zh_TW/other.lang index e395882fec6..2c62efd1c04 100644 --- a/htdocs/langs/zh_TW/other.lang +++ b/htdocs/langs/zh_TW/other.lang @@ -44,7 +44,7 @@ TotalSizeOfAttachedFiles=附件大小總計 MaxSize=檔案最大 AttachANewFile=附加一個新的檔案/文件 LinkedObject=鏈接對象 -Miscellanous=雜項 +Miscellaneous=雜項 NbOfActiveNotifications=號碼的通知 WarningInstallDirExists=警告,安裝目錄(htdocs中/安裝 )依然存在。這是一個嚴重的安全漏洞。您應該刪除它盡快。 WarningUntilDirRemoved=所有安全警告(可見由管理員用戶只)將保持活躍,只要是存在的脆弱性(或常數MAIN_REMOVE_INSTALL_WARNING是在安裝程序->其他設置添加)。 From 59eb21431a15873c471d0d30884503d39d03245b Mon Sep 17 00:00:00 2001 From: Grand Philippe Date: Sun, 24 Mar 2013 07:14:59 +0100 Subject: [PATCH 22/35] display enhancement and standardize --- htdocs/externalsite/admin/externalsite.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/htdocs/externalsite/admin/externalsite.php b/htdocs/externalsite/admin/externalsite.php index 2c241fbf3c7..ba63a5389e4 100644 --- a/htdocs/externalsite/admin/externalsite.php +++ b/htdocs/externalsite/admin/externalsite.php @@ -77,6 +77,17 @@ llxHeader(); $linkback=''.$langs->trans("BackToModuleList").''; print_fiche_titre($langs->trans("ExternalSiteSetup"),$linkback,'setup'); +print '
'; + +$h = 0; + +$head[$h][0] = DOL_URL_ROOT."/admin/externalsite.php"; +$head[$h][1] = $langs->trans("Miscellaneous"); +$head[$h][2] = 'externalsite'; +$hselected=$h; +$h++; + +dol_fiche_head($head, $hselected, $langs->trans("Module100Name")); print $langs->trans("Module100Desc")."
\n"; print '
'; From 51bc985a7632e5f590aa6e795a438a95f08ed10e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 24 Mar 2013 12:34:10 +0100 Subject: [PATCH 23/35] Add missing icon --- htdocs/theme/amarok/img/object_invoice.png | Bin 0 -> 3256 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100755 htdocs/theme/amarok/img/object_invoice.png diff --git a/htdocs/theme/amarok/img/object_invoice.png b/htdocs/theme/amarok/img/object_invoice.png new file mode 100755 index 0000000000000000000000000000000000000000..a9095ae91da010b3cbc91e813f46fa300cda39ee GIT binary patch literal 3256 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 Date: Sun, 24 Mar 2013 14:01:03 +0100 Subject: [PATCH 24/35] Fix: Missing lang --- htdocs/exports/export.php | 1 + 1 file changed, 1 insertion(+) diff --git a/htdocs/exports/export.php b/htdocs/exports/export.php index 687bec342c0..fcd968eeeb0 100644 --- a/htdocs/exports/export.php +++ b/htdocs/exports/export.php @@ -32,6 +32,7 @@ require_once DOL_DOCUMENT_ROOT.'/core/modules/export/modules_export.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; $langs->load("exports"); +$langs->load("users"); // Everybody should be able to go on this page //if (! $user->admin) From ff2407a454cb9d855ea5c8c3a1f9bb186aa9f32f Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 24 Mar 2013 14:01:33 +0100 Subject: [PATCH 25/35] Add hidden option to setup font size of information. --- htdocs/core/lib/pdf.lib.php | 13 ++++++++----- .../core/modules/facture/doc/pdf_crabe.modules.php | 10 ++++++---- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index 87ec1643ef2..676f89b3547 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -451,11 +451,14 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account,$onlynumber=0,$default { global $mysoc, $conf; + $diffsizetitle=(empty($conf->global->PDF_DIFFSIZE_TITLE)?3:$conf->global->PDF_DIFFSIZE_TITLE); + $diffsizecontent=(empty($conf->global->PDF_DIFFSIZE_CONTENT)?4:$conf->global->PDF_DIFFSIZE_CONTENT); + $pdf->SetXY($curx, $cury); if (empty($onlynumber)) { - $pdf->SetFont('','B',$default_font_size - 3); + $pdf->SetFont('','B',$default_font_size - $diffsizetitle); $pdf->MultiCell(100, 3, $outputlangs->transnoentities('PaymentByTransferOnThisBankAccount').':', 0, 'L', 0); $cury+=4; } @@ -472,7 +475,7 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account,$onlynumber=0,$default if (empty($onlynumber)) { - $pdf->SetFont('','',$default_font_size - 4); + $pdf->SetFont('','',$default_font_size - $diffsizecontent); $pdf->SetXY($curx, $cury); $pdf->MultiCell(100, 3, $outputlangs->transnoentities("Bank").': ' . $outputlangs->convToOutputCharset($account->bank), 0, 'L', 0); $cury+=3; @@ -544,12 +547,12 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account,$onlynumber=0,$default } else { - $pdf->SetFont('','B',6); + $pdf->SetFont('','B',$default_font_size - $diffsizecontent); $pdf->SetXY($curx, $cury); $pdf->MultiCell(100, 3, $outputlangs->transnoentities("Bank").': ' . $outputlangs->convToOutputCharset($account->bank), 0, 'L', 0); $cury+=3; - $pdf->SetFont('','B',6); + $pdf->SetFont('','B',$default_font_size - $diffsizecontent); $pdf->SetXY($curx, $cury); $pdf->MultiCell(100, 3, $outputlangs->transnoentities("BankAccountNumber").': ' . $outputlangs->convToOutputCharset($account->number), 0, 'L', 0); $cury+=3; @@ -561,7 +564,7 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account,$onlynumber=0,$default if ($account->getCountryCode() == 'IN') $ibankey="IFSC"; if ($account->getCountryCode() == 'IN') $bickey="SWIFT"; - $pdf->SetFont('','',6); + $pdf->SetFont('','',$default_font_size - $diffsizecontent); if (empty($onlynumber) && ! empty($account->domiciliation)) { diff --git a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php index 15ee4e29aba..fb164f04876 100755 --- a/htdocs/core/modules/facture/doc/pdf_crabe.modules.php +++ b/htdocs/core/modules/facture/doc/pdf_crabe.modules.php @@ -731,20 +731,22 @@ class pdf_crabe extends ModelePDFFactures // Si mode reglement non force ou si force a CHQ if (! empty($conf->global->FACTURE_CHQ_NUMBER)) { + $diffsizetitle=(empty($conf->global->PDF_DIFFSIZE_TITLE)?3:$conf->global->PDF_DIFFSIZE_TITLE); + if ($conf->global->FACTURE_CHQ_NUMBER > 0) { $account = new Account($this->db); $account->fetch($conf->global->FACTURE_CHQ_NUMBER); $pdf->SetXY($this->marge_gauche, $posy); - $pdf->SetFont('','B', $default_font_size - 3); + $pdf->SetFont('','B', $default_font_size - $diffsizetitle); $pdf->MultiCell(100, 3, $outputlangs->transnoentities('PaymentByChequeOrderedTo',$account->proprio),0,'L',0); $posy=$pdf->GetY()+1; if (empty($conf->global->MAIN_PDF_HIDE_CHQ_ADDRESS)) { $pdf->SetXY($this->marge_gauche, $posy); - $pdf->SetFont('','', $default_font_size - 3); + $pdf->SetFont('','', $default_font_size - $diffsizetitle); $pdf->MultiCell(100, 3, $outputlangs->convToOutputCharset($account->owner_address), 0, 'L', 0); $posy=$pdf->GetY()+2; } @@ -752,14 +754,14 @@ class pdf_crabe extends ModelePDFFactures if ($conf->global->FACTURE_CHQ_NUMBER == -1) { $pdf->SetXY($this->marge_gauche, $posy); - $pdf->SetFont('','B', $default_font_size - 3); + $pdf->SetFont('','B', $default_font_size - $diffsizetitle); $pdf->MultiCell(100, 3, $outputlangs->transnoentities('PaymentByChequeOrderedTo',$this->emetteur->name),0,'L',0); $posy=$pdf->GetY()+1; if (empty($conf->global->MAIN_PDF_HIDE_CHQ_ADDRESS)) { $pdf->SetXY($this->marge_gauche, $posy); - $pdf->SetFont('','', $default_font_size - 3); + $pdf->SetFont('','', $default_font_size - $diffsizetitle); $pdf->MultiCell(100, 3, $outputlangs->convToOutputCharset($this->emetteur->getFullAddress()), 0, 'L', 0); $posy=$pdf->GetY()+2; } From d4d3b9900d0d77e0f45b528bbb089f874baf4b1b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 24 Mar 2013 14:11:10 +0100 Subject: [PATCH 26/35] Fix: creation of user --- htdocs/user/class/user.class.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php index 37ff6735df5..bd7095f4d03 100644 --- a/htdocs/user/class/user.class.php +++ b/htdocs/user/class/user.class.php @@ -1133,8 +1133,8 @@ class User extends CommonObject $sql.= ", address = '".$this->db->escape($this->address)."'"; $sql.= ", zip = '".$this->db->escape($this->zip)."'"; $sql.= ", town = '".$this->db->escape($this->town)."'"; - $sql.= ", fk_state = '".$this->db->escape($this->state_id)."'"; - $sql.= ", fk_country = '".$this->db->escape($this->country_id)."'"; + $sql.= ", fk_state = ".($this->state_id > 0?"'".$this->db->escape($this->state_id)."'":"null"); + $sql.= ", fk_country = ".($this->country_id > 0?"'".$this->db->escape($this->country_id)."'":"null"); $sql.= ", office_phone = '".$this->db->escape($this->office_phone)."'"; $sql.= ", office_fax = '".$this->db->escape($this->office_fax)."'"; $sql.= ", user_mobile = '".$this->db->escape($this->user_mobile)."'"; From 3ef8bf55fa0620a0e93d15f0f8f9c9724ad0f100 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 24 Mar 2013 16:17:36 +0100 Subject: [PATCH 27/35] Fix: Better line position of information --- htdocs/core/lib/pdf.lib.php | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/htdocs/core/lib/pdf.lib.php b/htdocs/core/lib/pdf.lib.php index 676f89b3547..65816d52309 100644 --- a/htdocs/core/lib/pdf.lib.php +++ b/htdocs/core/lib/pdf.lib.php @@ -291,7 +291,7 @@ function pdf_build_address($outputlangs,$sourcecompany,$targetcompany='',$target if ($usecontact) { $stringaddress .= ($stringaddress ? "\n" : '' ).$outputlangs->convToOutputCharset($targetcontact->getFullName($outputlangs,1)); - + if (!empty($targetcontact->address)) { $stringaddress .= ($stringaddress ? "\n" : '' ).$outputlangs->convToOutputCharset(dol_format_address($targetcontact))."\n"; }else { @@ -303,9 +303,9 @@ function pdf_build_address($outputlangs,$sourcecompany,$targetcompany='',$target } else if (empty($targetcontact->country_code) && !empty($targetcompany->country_code) && ($targetcompany->country_code != $sourcecompany->country_code)) { $stringaddress.=$outputlangs->convToOutputCharset($outputlangs->transnoentitiesnoconv("Country".$targetcompany->country_code))."\n"; - } - - + } + + if (! empty($conf->global->MAIN_PDF_ADDALSOTARGETDETAILS)) { // Tel @@ -453,7 +453,7 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account,$onlynumber=0,$default $diffsizetitle=(empty($conf->global->PDF_DIFFSIZE_TITLE)?3:$conf->global->PDF_DIFFSIZE_TITLE); $diffsizecontent=(empty($conf->global->PDF_DIFFSIZE_CONTENT)?4:$conf->global->PDF_DIFFSIZE_CONTENT); - + $pdf->SetXY($curx, $cury); if (empty($onlynumber)) @@ -556,6 +556,8 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account,$onlynumber=0,$default $pdf->SetXY($curx, $cury); $pdf->MultiCell(100, 3, $outputlangs->transnoentities("BankAccountNumber").': ' . $outputlangs->convToOutputCharset($account->number), 0, 'L', 0); $cury+=3; + + if ($diffsizecontent <= 2) $cury+=1; } // Use correct name of bank id according to country @@ -571,16 +573,25 @@ function pdf_bank(&$pdf,$outputlangs,$curx,$cury,$account,$onlynumber=0,$default $pdf->SetXY($curx, $cury); $val=$outputlangs->transnoentities("Residence").': ' . $outputlangs->convToOutputCharset($account->domiciliation); $pdf->MultiCell(100, 3, $val, 0, 'L', 0); - $nboflines=dol_nboflines_bis($val,120); - //print $nboflines;exit; - $cury+=($nboflines*2)+2; + //$nboflines=dol_nboflines_bis($val,120); + //$cury+=($nboflines*3)+2; + $tmpy=$pdf->getStringHeight (100, $val); + $cury+=$tmpy; } else if (! $usedetailedbban) $cury+=1; - $pdf->SetXY($curx, $cury); - $pdf->MultiCell(100, 3, $outputlangs->transnoentities($ibankey).': ' . $outputlangs->convToOutputCharset($account->iban), 0, 'L', 0); - $pdf->SetXY($curx, $cury+3); - $pdf->MultiCell(100, 3, $outputlangs->transnoentities($bickey).': ' . $outputlangs->convToOutputCharset($account->bic), 0, 'L', 0); + if (! empty($account->iban)) + { + $pdf->SetXY($curx, $cury); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities($ibankey).': ' . $outputlangs->convToOutputCharset($account->iban), 0, 'L', 0); + $cury+=3; + } + + if (! empty($account->bic)) + { + $pdf->SetXY($curx, $cury); + $pdf->MultiCell(100, 3, $outputlangs->transnoentities($bickey).': ' . $outputlangs->convToOutputCharset($account->bic), 0, 'L', 0); + } return $pdf->getY(); } From b3d4811b6fa0e8b5a81d95737c5cba2c7630eb80 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 24 Mar 2013 19:00:58 +0100 Subject: [PATCH 28/35] New: Another method to allow style tags into email. Preivous one was using encoding, but this create data to not be stored correctly into database. Old method is still available by adding '_encoded' at end of toolbar name. --- htdocs/comm/mailing/fiche.php | 29 ++++--- htdocs/core/class/doleditor.class.php | 12 +-- htdocs/main.inc.php | 10 +-- htdocs/theme/eldy/ckeditor/config.js | 7 ++ htdocs/user/fiche.php | 118 +++++++++++++------------- 5 files changed, 98 insertions(+), 78 deletions(-) diff --git a/htdocs/comm/mailing/fiche.php b/htdocs/comm/mailing/fiche.php index b0f32a3e69d..0147ec57dff 100644 --- a/htdocs/comm/mailing/fiche.php +++ b/htdocs/comm/mailing/fiche.php @@ -23,6 +23,8 @@ * \brief Fiche mailing, onglet general */ +if (! defined('NOSTYLECHECK')) define('NOSTYLECHECK','1'); + require '../../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/emailing.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; @@ -768,7 +770,7 @@ else $linkback = ''.$langs->trans("BackToList").''; - print ''.$langs->trans("Ref").''; + print ''.$langs->trans("Ref").''; print ''; print $form->showrefnav($object,'id', $linkback); print ''; @@ -789,10 +791,10 @@ else print ''; // Status - print ''.$langs->trans("Status").''.$object->getLibStatut(4).''; + print ''.$langs->trans("Status").''.$object->getLibStatut(4).''; // Nb of distinct emails - print ''; + print ''; print $langs->trans("TotalNbOfDistinctRecipients"); print ''; $nbemail = ($object->nbemail?$object->nbemail:img_warning('').' '.$langs->trans("NoTargetYet").''); @@ -979,7 +981,7 @@ else print ''; // Subject - print ''; + print ''; // Joined files print ''; print ''; print ''; @@ -1040,7 +1049,7 @@ else print ''; - print '
'.$langs->trans("MailTopic").''.$object->sujet.'
'.$langs->trans("MailTopic").''.$object->sujet.'
'.$langs->trans("MailFile").''; @@ -1007,7 +1009,14 @@ else // Message print '
'.$langs->trans("MailMessage").''; - print dol_htmlentitiesbr($object->body); + if (empty($object->bgcolor) || strtolower($object->bgcolor) == 'ffffff') + { + // Editeur wysiwyg + require_once DOL_DOCUMENT_ROOT.'/core/class/doleditor.class.php'; + $doleditor=new DolEditor('body',$object->body,'',320,'dolibarr_readonly','',false,true,empty($conf->global->FCKEDITOR_ENABLE_MAILING)?0:1,20,70); + $doleditor->Create(); + } + else print dol_htmlentitiesbr($object->body); print '
'; print $langs->trans("TotalNbOfDistinctRecipients"); print ''; - $nbemail = ($object->nbemail?$object->nbemail:''.$langs->trans("NoTargetYet").''); + $nbemail = ($object->nbemail?$object->nbemail:img_warning('').' '.$langs->trans("NoTargetYet").''); if (!empty($conf->global->MAILING_LIMIT_SENDBYWEB) && is_numeric($nbemail) && $conf->global->MAILING_LIMIT_SENDBYWEB < $nbemail) { $text=$langs->trans('LimitSendingEmailing',$conf->global->MAILING_LIMIT_SENDBYWEB); @@ -1142,13 +1151,13 @@ else $doleditor->Create(); print '
'; + print '
'; + + print '
'; print ''; print '   '; print ''; - print ''; - - print ''; + print '
'; print ''; print '
'; diff --git a/htdocs/core/class/doleditor.class.php b/htdocs/core/class/doleditor.class.php index 9256e08318c..55cc984c12f 100644 --- a/htdocs/core/class/doleditor.class.php +++ b/htdocs/core/class/doleditor.class.php @@ -51,7 +51,7 @@ class DolEditor * @param string $content Content of WYSIWIG field * @param int $width Width in pixel of edit area (auto by default) * @param int $height Height in pixel of edit area (200px by default) - * @param string $toolbarname Name of bar set to use ('Full', 'dolibarr_notes', 'dolibarr_details', 'dolibarr_mailings') + * @param string $toolbarname Name of bar set to use ('Full', 'dolibarr_notes[_encoded]', 'dolibarr_details[_encoded]', 'dolibarr_mailings[_encoded]', ') * @param string $toolbarlocation Where bar is stored : * 'In' each window has its own toolbar * 'Out:name' share toolbar into the div called 'name' @@ -69,6 +69,7 @@ class DolEditor if (! $rows) $rows=round($height/20); if (! $cols) $cols=($width?round($width/6):80); + $shorttoolbarname=preg_replace('/_encoded$/','',$toolbarname); // Name of extended editor to use (FCKEDITOR_EDITORNAME can be 'ckeditor' or 'fckeditor') $defaulteditor='ckeditor'; @@ -97,7 +98,7 @@ class DolEditor $this->editor->Value = $content; $this->editor->Height = $height; if (! empty($width)) $this->editor->Width = $width; - $this->editor->ToolbarSet = $toolbarname; + $this->editor->ToolbarSet = $shorttoolbarname; $this->editor->Config['AutoDetectLanguage'] = 'true'; $this->editor->Config['ToolbarLocation'] = $toolbarlocation ? $toolbarlocation : 'In'; $this->editor->Config['ToolbarStartExpanded'] = $toolbarstartexpanded; @@ -124,7 +125,7 @@ class DolEditor { $this->content = $content; $this->htmlname = $htmlname; - $this->toolbarname = $toolbarname; + $this->toolbarname = $shorttoolbarname; $this->toolbarstartexpanded = $toolbarstartexpanded; $this->rows = max(ROWS_3,$rows); $this->cols = max(40,$cols); @@ -169,9 +170,8 @@ class DolEditor //$skin='office2003'; //$skin='v2'; $skin='kama'; - - if ($this->toolbarname=='dolibarr_mailings') {$htmlencode_force='true';} - else {$htmlencode_force='false';} + + $htmlencode_force=preg_match('/_encoded$/',$this->toolbarname)?'true':'false'; $out.= '