Hello babynus,
j'ai un problème de traduction lorsque j'utilise la fonctionnalité de copie (Activité et Jalon) :
Le plus étonnant c'est que ce problème n’apparaît qu'avec la langue française (espagnol, allemand, russe ... fonctionnent très bien).
Pourtant dans mon fichier tooli18nnlsfrlang.js j'ai bien :
Activity: "Activité",
La seule piste que j'ai trouvée dans le code est que au clic sur le bouton de copie, il passe par jsonList.php et $_REQUEST contient ceci :
critValue = undefined //alors qu'il devrais contenir Activity critField = scope dataType = idType listType = list required = true //sinon on peut le mettre à false pour laisser vide par défaut non?
Voilà tous les éléments que j'ai pu rassembler, je continue à chercher
Merci d'avance 🙂
Bonjour,
Je ne peux pas reproduire.
Tout se déroule correctement pour moi en français.
Pourriez-vous essayer de :
- nettoyer le cache de votre navigateur
- vous déconnecter / reconnecter
- réessayer.
Merci.
C'est fait, mais comme je le pensais, ça n'a eu aucuns effets :S
Est-ce qu'un truc comme ça pourrait marcher ?
if($_REQUEST['critValue'] == "Activity"){$_REQUEST['critValue'] == "Activité";}
Si oui, à quel endroit ? Car j'ai essayé de le placer au début du fichier jsonList.php, mais aucun résultats.
Non, ce que vous proposez ne peut pas marcher.
1) Pourriez-vous tester sur la base de démo : reproduisez-vous le même comportement ou cela fonctionne-t-il correctement ?
2) Pourriez-vous vérifier le contenu de la table copyable ?
Ca devrait ressembler à :
id name idle sortOrder
1 Ticket 0 10
2 Activity 0 20
3 Milestone 0 30
4 IndividualExpense 0 40
5 ProjectExpense 0 50
6 Risk 0 60
7 Action 0 32
8 Issue 0 80
9 Meeting 0 90
10 Decision 0 100
11 Question 0 110
12 Requirement 0 35
3) Si cette table est correcte, pourriez-vous essayer de remplacer "Activité" par "Activite" (sans accent) dans /tool/i18n/nls/lang.xls, et reteser après avoir vidé le cache de votre navigateur.
Merci
Sur la démo, l'erreur ne se produit pas.
Ma table copyable correspond bien.
Et j'ai pensé aussi à l'accent dans tooli18nnlsfrlang.js
Mais le problème est identique pour l'onglet Jalon (Milestone en anglais).
Et n’apparaît pas pour Ticket et Action car la traduction anglais/français est identique.
Can you try to replace code in /view/js/projectorDialog.js, line 3284, from
function copyObjectTo(objectClass) {
dojo.byId('copyClass').value=dojo.byId("objectClass").value;
dojo.byId('copyId').value=dojo.byId("objectId").value;
dijit.byId('copyToClass').set('displayedValue',i18n(objectClass));
dijit.byId('copyToName').set('value',dijit.byId('name').get('value'));
dijit.byId('copyToOrigin').set('checked','checked');
copyObjectToShowStructure();
dijit.byId('copyToType').reset();
//if (dojo.byId('copyClass').value==class) {
var runModif="dijit.byId('copyToType').set('value',dijit.byId('id"+objectClass+"Type').get('value'))";
setTimeout(runModif,1);
//}
dijit.byId('dialogCopy').show();
}
to
function copyObjectTo(objectClass) {
dojo.byId('copyClass').value=dojo.byId("objectClass").value;
dojo.byId('copyId').value=dojo.byId("objectId").value;
//dijit.byId('copyToClass').set('displayedValue',i18n(objectClass));
for (var i in copyableArray) {
if (copyableArray==objectClass) {
dijit.byId('copyToClass').set('value',i);
}
}
dijit.byId('copyToName').set('value',dijit.byId('name').get('value'));
dijit.byId('copyToOrigin').set('checked','checked');
copyObjectToShowStructure();
dijit.byId('copyToType').reset();
//if (dojo.byId('copyClass').value==class) {
var runModif="dijit.byId('copyToType').set('value',dijit.byId('id"+objectClass+"Type').get('value'))";
setTimeout(runModif,1);
//}
dijit.byId('dialogCopy').show();
}
Refresh your browser cache and try again.
Problème résolu !
le problème provenait bien d'un script js.
La partie à remplacée était donc :
dijit.byId('copyToClass').set('displayedValue',i18n(objectClass));
par :
for (var i in copyableArray) {
if (copyableArray==objectClass) {
dijit.byId('copyToClass').set('value',i);
}
}
Merci Babynus
Bizarrement, le code précédent devrait aussi fonctionner...
Vous avez localement un problème sur le fichier de traduction utilisé par Javascript (utilisé par i18n), très certainement un problème de cache, peut-être au niveau serveur PHP.
Ce code étant plus fiable, il sera généralisé dans la V3.1.
