<?xml version="1.0" encoding="UTF-8"?>
<!--

    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.
-->
<resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-properties.xsd">
    <property key="XuiUnableToLogIn">
        <value xml:lang="en">Unable to log in; XUI not configured properly</value>
        <value xml:lang="fr">Impossible de continuer : XUI n'est pas configuré correctement</value>
        <value xml:lang="it">Non è possibile fare il log in; XUI non configurato propriamente</value>
        <value xml:lang="th">ไม่สามารถเข้าสู่ระบบได้ : XUI ไม่สามารถจัดการข้อมูลได้อย่างถูกต้อง</value>
        <value xml:lang="zh">无法登录；XUI配置不正确</value>
        <value xml:lang="zh-TW">無法登入;XUI配置不正確</value>
    </property>
    <property key="XuiUserLoginNotValid">
        <value xml:lang="en">UserLogin returned not valid (null)</value>
        <value xml:lang="fr">Identifiant de connexion retourné non valide (null)</value>
        <value xml:lang="it">UserLogin restituito non valido (null)</value>
        <value xml:lang="th">ชื่อผู้เข้าใช้ระบบไม่ถูกต้อง (ค่าว่าง)</value>
        <value xml:lang="zh">返回的用户登录无效(null)</value>
        <value xml:lang="zh-TW">返回的使用者登入無效(null)</value>
    </property>
    <property key="XuiUsernameDoesNotMatchLoggedUser">
        <value xml:lang="en">User name does not match already logged in user!</value>
        <value xml:lang="fr">Cet identifiant ne correspond pas à celui en cours !</value>
        <value xml:lang="it">Nome utente non confrontato per l'utente autenticato!</value>
        <value xml:lang="th">ชื่อผู้เข้าใช้ระบบไม่ตรงกับข้อมูลที่บันทึกไว้กรุณาตรวจสอบ</value>
        <value xml:lang="zh">用户名与已经登录的用户不一致！</value>
        <value xml:lang="zh-TW">使用者名與已經登入的使用者不一致！</value>
    </property>
</resource>
