[Kimchi-devel] [PATCH 2/5] Use proper term "user name" instead of "user id"
Daniel H Barboza
danielhb at linux.vnet.ibm.com
Mon Apr 14 18:31:09 UTC 2014
Reviewed-by: Daniel Barboza <danielhb at linux.vnet.ibm.com>
On 04/11/2014 05:57 PM, Aline Manera wrote:
> From: Aline Manera <alinefm at br.ibm.com>
>
> In the Linux environment, a user ID is an integer code which identifies
> a user; a user name is the human friendly text identifier of that user.
> Kimchi uses both terms interchangeably.
>
> Rename all occurrences of "userid" (and its variants) to "username" (and
> its variants) in external UI messages and internal code.
>
> Signed-off-by: Crístian Viana <vianac at linux.vnet.ibm.com>
> Signed-off-by: Aline Manera <alinefm at br.ibm.com>
> ---
> po/en_US.po | 33 +++++++++++++++++++++++++++++++--
> po/kimchi.pot | 33 +++++++++++++++++++++++++++++++--
> po/pt_BR.po | 38 +++++++++++++++++++++++++++++++++++---
> po/zh_CN.po | 36 +++++++++++++++++++++++++++++++++---
> src/kimchi/auth.py | 38 +++++++++++++++++++-------------------
> src/kimchi/i18n.py | 2 +-
> src/kimchi/root.py | 4 ++--
> tests/test_rest.py | 8 ++++----
> tests/utils.py | 2 +-
> ui/js/src/kimchi.login_window.js | 16 ++++++++--------
> ui/js/src/kimchi.user.js | 14 +++++++-------
> ui/pages/login-window.html.tmpl | 4 ++--
> 12 files changed, 174 insertions(+), 54 deletions(-)
>
> diff --git a/po/en_US.po b/po/en_US.po
> index f2abcf0..0b05f1e 100644
> --- a/po/en_US.po
> +++ b/po/en_US.po
> @@ -6,7 +6,7 @@ msgid ""
> msgstr ""
> "Project-Id-Version: kimchi 0.1\n"
> "Report-Msgid-Bugs-To: \n"
> -"POT-Creation-Date: 2014-03-26 16:19-0300\n"
> +"POT-Creation-Date: 2014-04-09 17:11-0300\n"
> "PO-Revision-Date: 2013-07-11 17:32-0400\n"
> "Last-Translator: Crístian Viana <vianac at linux.vnet.ibm.com>\n"
> "Language-Team: English\n"
> @@ -379,6 +379,11 @@ msgid "Create a network"
> msgstr "Create a network"
>
> msgid ""
> +"This network is not persistent. Instead of stop, this action will "
> +"permanently delete it. Would you like to continue?"
> +msgstr ""
> +
> +msgid ""
> "This will permanently delete the storage pool. Would you like to continue?"
> msgstr ""
>
> @@ -662,6 +667,9 @@ msgstr "VLAN ID"
> msgid "No templates found."
> msgstr "No templates found."
>
> +msgid "Clone"
> +msgstr ""
> +
> msgid "Location"
> msgstr "Location"
>
> @@ -797,7 +805,11 @@ msgid "Datastore is not initiated in the model object."
> msgstr ""
>
> #, python-format
> -msgid "Authentication failed for user '%(userid)s'. [Error code: %(code)s]"
> +msgid "Unable to start task due error: %(err)s"
> +msgstr ""
> +
> +#, python-format
> +msgid "Authentication failed for user '%(username)s'. [Error code: %(code)s]"
> msgstr ""
>
> msgid "You are not authorized to access Kimchi"
> @@ -1038,6 +1050,14 @@ msgid "The volume: %(volume)s in not in storage pool %(pool)s"
> msgstr ""
>
> #, python-format
> +msgid "Unable to create template due error: %(err)s"
> +msgstr ""
> +
> +#, python-format
> +msgid "Unable to delete template due error: %(err)s"
> +msgstr ""
> +
> +#, python-format
> msgid "Storage pool %(name)s already exists"
> msgstr ""
>
> @@ -1179,6 +1199,10 @@ msgid ""
> msgstr ""
>
> #, python-format
> +msgid "Unable to update database with deep scan information due error: %(err)s"
> +msgstr ""
> +
> +#, python-format
> msgid "Storage volume %(name)s already exists"
> msgstr ""
>
> @@ -1247,6 +1271,11 @@ msgid "Storage volume requires a volume name"
> msgstr ""
>
> #, python-format
> +msgid ""
> +"Unable to update database with storage volume information due error: %(err)s"
> +msgstr ""
> +
> +#, python-format
> msgid "Interface %(name)s does not exist"
> msgstr ""
>
> diff --git a/po/kimchi.pot b/po/kimchi.pot
> index 7b33eb3..92d5401 100755
> --- a/po/kimchi.pot
> +++ b/po/kimchi.pot
> @@ -8,7 +8,7 @@ msgid ""
> msgstr ""
> "Project-Id-Version: PACKAGE VERSION\n"
> "Report-Msgid-Bugs-To: \n"
> -"POT-Creation-Date: 2014-03-26 16:19-0300\n"
> +"POT-Creation-Date: 2014-04-09 17:11-0300\n"
> "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
> "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
> "Language-Team: LANGUAGE <LL at li.org>\n"
> @@ -373,6 +373,11 @@ msgid "Create a network"
> msgstr ""
>
> msgid ""
> +"This network is not persistent. Instead of stop, this action will "
> +"permanently delete it. Would you like to continue?"
> +msgstr ""
> +
> +msgid ""
> "This will permanently delete the storage pool. Would you like to continue?"
> msgstr ""
>
> @@ -650,6 +655,9 @@ msgstr ""
> msgid "No templates found."
> msgstr ""
>
> +msgid "Clone"
> +msgstr ""
> +
> msgid "Location"
> msgstr ""
>
> @@ -785,7 +793,11 @@ msgid "Datastore is not initiated in the model object."
> msgstr ""
>
> #, python-format
> -msgid "Authentication failed for user '%(userid)s'. [Error code: %(code)s]"
> +msgid "Unable to start task due error: %(err)s"
> +msgstr ""
> +
> +#, python-format
> +msgid "Authentication failed for user '%(username)s'. [Error code: %(code)s]"
> msgstr ""
>
> msgid "You are not authorized to access Kimchi"
> @@ -1026,6 +1038,14 @@ msgid "The volume: %(volume)s in not in storage pool %(pool)s"
> msgstr ""
>
> #, python-format
> +msgid "Unable to create template due error: %(err)s"
> +msgstr ""
> +
> +#, python-format
> +msgid "Unable to delete template due error: %(err)s"
> +msgstr ""
> +
> +#, python-format
> msgid "Storage pool %(name)s already exists"
> msgstr ""
>
> @@ -1167,6 +1187,10 @@ msgid ""
> msgstr ""
>
> #, python-format
> +msgid "Unable to update database with deep scan information due error: %(err)s"
> +msgstr ""
> +
> +#, python-format
> msgid "Storage volume %(name)s already exists"
> msgstr ""
>
> @@ -1235,6 +1259,11 @@ msgid "Storage volume requires a volume name"
> msgstr ""
>
> #, python-format
> +msgid ""
> +"Unable to update database with storage volume information due error: %(err)s"
> +msgstr ""
> +
> +#, python-format
> msgid "Interface %(name)s does not exist"
> msgstr ""
>
> diff --git a/po/pt_BR.po b/po/pt_BR.po
> index 4967e1d..cbb2b31 100644
> --- a/po/pt_BR.po
> +++ b/po/pt_BR.po
> @@ -20,7 +20,7 @@ msgid ""
> msgstr ""
> "Project-Id-Version: kimchi 1.0\n"
> "Report-Msgid-Bugs-To: \n"
> -"POT-Creation-Date: 2014-03-26 16:19-0300\n"
> +"POT-Creation-Date: 2014-04-09 17:11-0300\n"
> "PO-Revision-Date: 2013-06-27 10:48+0000\n"
> "Last-Translator: Crístian Viana <vianac at linux.vnet.ibm.com>\n"
> "Language-Team: Aline Manera <alinefm at br.ibm.com>\n"
> @@ -407,6 +407,14 @@ msgstr ""
> msgid "Create a network"
> msgstr "Criar uma rede"
>
> +#, fuzzy
> +msgid ""
> +"This network is not persistent. Instead of stop, this action will "
> +"permanently delete it. Would you like to continue?"
> +msgstr ""
> +"O storage pool não é persistente. Ao invés de desativar, essa ação vai "
> +"removê-lo permanentemente. Deseja continuar?"
> +
> msgid ""
> "This will permanently delete the storage pool. Would you like to continue?"
> msgstr "O storage pool vai ser permanentemente removido. Deseja continuar?"
> @@ -695,6 +703,9 @@ msgstr "VLAN ID"
> msgid "No templates found."
> msgstr "Nenhum modelo encontrado."
>
> +msgid "Clone"
> +msgstr ""
> +
> msgid "Location"
> msgstr "Localização"
>
> @@ -829,8 +840,12 @@ msgstr "Essa API suporta apenas JSON"
> msgid "Datastore is not initiated in the model object."
> msgstr "Datastore não é inicializado no objeto modelo."
>
> -#, python-format
> -msgid "Authentication failed for user '%(userid)s'. [Error code: %(code)s]"
> +#, fuzzy, python-format
> +msgid "Unable to start task due error: %(err)s"
> +msgstr "Não foi possível iniciar a máquina virtual %(name)s. Detalhes: %(err)s"
> +
> +#, fuzzy, python-format
> +msgid "Authentication failed for user '%(username)s'. [Error code: %(code)s]"
> msgstr "O usuário '%(userid)s' falhou na autenticação. [Error code: %(code)s]"
>
> msgid "You are not authorized to access Kimchi"
> @@ -1092,6 +1107,14 @@ msgstr ""
> msgid "The volume: %(volume)s in not in storage pool %(pool)s"
> msgstr "O volume de storage: %(volume)s não existe no storage pool %(pool)s"
>
> +#, fuzzy, python-format
> +msgid "Unable to create template due error: %(err)s"
> +msgstr "Não é possível criar o storage pool %(name)s.Detalhes: %(err)s"
> +
> +#, fuzzy, python-format
> +msgid "Unable to delete template due error: %(err)s"
> +msgstr "Incapaz de deletar a rede ativa %(name)s"
> +
> #, python-format
> msgid "Storage pool %(name)s already exists"
> msgstr "Storage pool %(name)s já existe"
> @@ -1254,6 +1277,10 @@ msgstr ""
> "Um grupo de volume chamado '%(name)s' já existe. Por favor, escolher outro "
> "nome para criar o pool lógico."
>
> +#, fuzzy, python-format
> +msgid "Unable to update database with deep scan information due error: %(err)s"
> +msgstr "Incapaz de carregar as informações do repositório. Detalhes: %(err)s"
> +
> #, python-format
> msgid "Storage volume %(name)s already exists"
> msgstr "Volume de storage %(name)s já existe"
> @@ -1329,6 +1356,11 @@ msgstr "Formato do volume não suportado"
> msgid "Storage volume requires a volume name"
> msgstr "Volume requer um nome"
>
> +#, fuzzy, python-format
> +msgid ""
> +"Unable to update database with storage volume information due error: %(err)s"
> +msgstr "Incapaz de deletar o volume %(name)s. Detalhes: %(err)s"
> +
> #, python-format
> msgid "Interface %(name)s does not exist"
> msgstr "Interface %(name)s não existe"
> diff --git a/po/zh_CN.po b/po/zh_CN.po
> index 6393b83..3b3754c 100644
> --- a/po/zh_CN.po
> +++ b/po/zh_CN.po
> @@ -20,7 +20,7 @@ msgid ""
> msgstr ""
> "Project-Id-Version: kimchi 0.1\n"
> "Report-Msgid-Bugs-To: \n"
> -"POT-Creation-Date: 2014-03-28 15:35+0800\n"
> +"POT-Creation-Date: 2014-04-09 17:11-0300\n"
> "PO-Revision-Date: 2013-06-27 10:48+0000\n"
> "Last-Translator: ShaoHe Feng <shaohef at linux.vnet.ibm.com>\n"
> "Language-Team: ShaoHe Feng <shaohef at linux.vnet.ibm.com>\n"
> @@ -389,6 +389,12 @@ msgstr "此操作将中断依赖此网络的虚拟机的网络连接。"
> msgid "Create a network"
> msgstr "创建一个网络"
>
> +#, fuzzy
> +msgid ""
> +"This network is not persistent. Instead of stop, this action will "
> +"permanently delete it. Would you like to continue?"
> +msgstr "对于非持久存储池,这个操作将会永久删除存储池而不是停用。是否继续?"
> +
> msgid ""
> "This will permanently delete the storage pool. Would you like to continue?"
> msgstr "这将永久删除存储池。是否继续?"
> @@ -669,6 +675,9 @@ msgstr "VLAN号"
> msgid "No templates found."
> msgstr "没有发现模板"
>
> +msgid "Clone"
> +msgstr ""
> +
> msgid "Location"
> msgstr "路径"
>
> @@ -803,8 +812,12 @@ msgstr "这个API仅支持JSON"
> msgid "Datastore is not initiated in the model object."
> msgstr "尚未为model对象初始化数据存储。"
>
> -#, python-format
> -msgid "Authentication failed for user '%(userid)s'. [Error code: %(code)s]"
> +#, fuzzy, python-format
> +msgid "Unable to start task due error: %(err)s"
> +msgstr "不能启动虚拟机 %(name)s. 详情:%(err)s"
> +
> +#, fuzzy, python-format
> +msgid "Authentication failed for user '%(username)s'. [Error code: %(code)s]"
> msgstr "用户 '%(userid)s' 验证失败。[错误代码: %(code)s]"
>
> msgid "You are not authorized to access Kimchi"
> @@ -1048,6 +1061,14 @@ msgstr "当模板的存储池是iscsi或scsi时,必须为模板指定一个卷
> msgid "The volume: %(volume)s in not in storage pool %(pool)s"
> msgstr "存储池%(pool)s中没有存储卷%(volume)s"
>
> +#, fuzzy, python-format
> +msgid "Unable to create template due error: %(err)s"
> +msgstr "不能创建存储池 %(name)s。详情: %(err)s"
> +
> +#, fuzzy, python-format
> +msgid "Unable to delete template due error: %(err)s"
> +msgstr "不能删除激活的网络%(name)s"
> +
> #, python-format
> msgid "Storage pool %(name)s already exists"
> msgstr "存储池%(name)s已经存在"
> @@ -1189,6 +1210,10 @@ msgid ""
> "to create the logical pool."
> msgstr "卷组'%(name)s'已经存在,请选择其它的名字来创建逻辑存储池。"
>
> +#, fuzzy, python-format
> +msgid "Unable to update database with deep scan information due error: %(err)s"
> +msgstr "不能获取软件仓库的信息。详情:'%(err)s'"
> +
> #, python-format
> msgid "Storage volume %(name)s already exists"
> msgstr "存储卷%(name)s已经存在"
> @@ -1257,6 +1282,11 @@ msgstr "存储卷格式不支持"
> msgid "Storage volume requires a volume name"
> msgstr "存储卷需要名字"
>
> +#, fuzzy, python-format
> +msgid ""
> +"Unable to update database with storage volume information due error: %(err)s"
> +msgstr "不能删除存储卷%(name)s。详情:%(err)s"
> +
> #, python-format
> msgid "Interface %(name)s does not exist"
> msgstr "接口%(name)s不存在"
> diff --git a/src/kimchi/auth.py b/src/kimchi/auth.py
> index 63e11c4..dc78ded 100644
> --- a/src/kimchi/auth.py
> +++ b/src/kimchi/auth.py
> @@ -35,7 +35,7 @@ from kimchi.exception import InvalidOperation, OperationFailed
> from kimchi.utils import run_command
>
>
> -USER_ID = 'userid'
> +USER_NAME = 'username'
> USER_GROUPS = 'groups'
> USER_SUDO = 'sudo'
> REFRESH = 'robot-refresh'
> @@ -48,15 +48,15 @@ def debug(msg):
>
> class User(object):
>
> - def __init__(self, userid):
> + def __init__(self, username):
> self.user = {}
> - self.user[USER_ID] = userid
> + self.user[USER_NAME] = username
> self.user[USER_GROUPS] = None
> self.user[USER_SUDO] = False
>
> def get_groups(self):
> self.user[USER_GROUPS] = [g.gr_name for g in grp.getgrall()
> - if self.user[USER_ID] in g.gr_mem]
> + if self.user[USER_NAME] in g.gr_mem]
> return self.user[USER_GROUPS]
>
> def has_sudo(self):
> @@ -72,16 +72,16 @@ class User(object):
> os.setsid()
> fcntl.ioctl(slave, termios.TIOCSCTTY, 0)
>
> - out, err, exit = run_command(['sudo', '-l', '-U', self.user[USER_ID],
> + out, err, exit = run_command(['sudo', '-l', '-U', self.user[USER_NAME],
> 'sudo'])
> if exit == 0:
> - debug("User %s is allowed to run sudo" % self.user[USER_ID])
> + debug("User %s is allowed to run sudo" % self.user[USER_NAME])
> # sudo allows a wide range of configurations, such as controlling
> # which binaries the user can execute with sudo.
> # For now, we will just check whether the user is allowed to run
> # any command with sudo.
> out, err, exit = run_command(['sudo', '-l', '-U',
> - self.user[USER_ID]])
> + self.user[USER_NAME]])
> for line in out.split('\n'):
> if line and re.search("(ALL)", line):
> result.value = 1
> @@ -89,9 +89,9 @@ class User(object):
> result.value)
> return
> debug("User %s can only run some commands with sudo" %
> - self.user[USER_ID])
> + self.user[USER_NAME])
> else:
> - debug("User %s is not allowed to run sudo" % self.user[USER_ID])
> + debug("User %s is not allowed to run sudo" % self.user[USER_NAME])
>
> def get_user(self):
> return self.user
> @@ -125,7 +125,7 @@ def authenticate(username, password, service="passwd"):
> try:
> auth.authenticate()
> except PAM.error, (resp, code):
> - msg_args = {'userid': username, 'code': code}
> + msg_args = {'username': username, 'code': code}
> raise OperationFailed("KCHAUTH0001E", msg_args)
>
> return True
> @@ -145,7 +145,7 @@ def check_auth_session():
> for the user.
> """
> cherrypy.session.acquire_lock()
> - session = cherrypy.session.get(USER_ID, None)
> + session = cherrypy.session.get(USER_NAME, None)
> cherrypy.session.release_lock()
> if session is not None:
> debug("Session authenticated for user %s" % session)
> @@ -153,7 +153,7 @@ def check_auth_session():
> if kimchiRobot == "kimchi-robot":
> if (time.time() - cherrypy.session[REFRESH] >
> cherrypy.session.timeout * 60):
> - cherrypy.session[USER_ID] = None
> + cherrypy.session[USER_NAME] = None
> cherrypy.lib.sessions.expire()
> raise cherrypy.HTTPError(401)
> else:
> @@ -183,20 +183,20 @@ def check_auth_httpba():
> b64data = re.sub("Basic ", "", authheader)
> decodeddata = base64.b64decode(b64data.encode("ASCII"))
> # TODO: test how this handles ':' characters in username/passphrase.
> - userid, password = decodeddata.decode().split(":", 1)
> + username, password = decodeddata.decode().split(":", 1)
>
> - return login(userid, password)
> + return login(username, password)
>
>
> -def login(userid, password):
> - if not authenticate(userid, password):
> +def login(username, password):
> + if not authenticate(username, password):
> debug("User cannot be verified with the supplied password")
> return None
> - user = User(userid)
> + user = User(username)
> debug("User verified, establishing session")
> cherrypy.session.acquire_lock()
> cherrypy.session.regenerate()
> - cherrypy.session[USER_ID] = userid
> + cherrypy.session[USER_NAME] = username
> cherrypy.session[USER_GROUPS] = user.get_groups()
> cherrypy.session[USER_SUDO] = user.has_sudo()
> cherrypy.session[REFRESH] = time.time()
> @@ -206,7 +206,7 @@ def login(userid, password):
>
> def logout():
> cherrypy.session.acquire_lock()
> - cherrypy.session[USER_ID] = None
> + cherrypy.session[USER_NAME] = None
> cherrypy.session[REFRESH] = 0
> cherrypy.session.release_lock()
> cherrypy.lib.sessions.expire()
> diff --git a/src/kimchi/i18n.py b/src/kimchi/i18n.py
> index ae8d24e..0bde5b9 100644
> --- a/src/kimchi/i18n.py
> +++ b/src/kimchi/i18n.py
> @@ -34,7 +34,7 @@ messages = {
> "KCHASYNC0001E": _("Datastore is not initiated in the model object."),
> "KCHASYNC0002E": _("Unable to start task due error: %(err)s"),
>
> - "KCHAUTH0001E": _("Authentication failed for user '%(userid)s'. [Error code: %(code)s]"),
> + "KCHAUTH0001E": _("Authentication failed for user '%(username)s'. [Error code: %(code)s]"),
> "KCHAUTH0002E": _("You are not authorized to access Kimchi"),
> "KCHAUTH0003E": _("Specify %(item)s to login into Kimchi"),
> "KCHAUTH0004E": _("This operation is not allowed as you have restricted access to Kimchi."),
> diff --git a/src/kimchi/root.py b/src/kimchi/root.py
> index 9bae34a..514d75d 100644
> --- a/src/kimchi/root.py
> +++ b/src/kimchi/root.py
> @@ -102,14 +102,14 @@ class KimchiRoot(Root):
> def login(self, *args):
> params = parse_request()
> try:
> - userid = params['userid']
> + username = params['username']
> password = params['password']
> except KeyError, item:
> e = MissingParameter('KCHAUTH0003E', {'item': str(item)})
> raise cherrypy.HTTPError(400, e.message)
>
> try:
> - user_info = auth.login(userid, password)
> + user_info = auth.login(username, password)
> except OperationFailed:
> raise cherrypy.HTTPError(401)
>
> diff --git a/tests/test_rest.py b/tests/test_rest.py
> index cd40d55..6bce606 100644
> --- a/tests/test_rest.py
> +++ b/tests/test_rest.py
> @@ -106,7 +106,7 @@ class RestTests(unittest.TestCase):
> # HTTP:401. Since HTTP Simple Auth is not allowed for text/html, we
> # need to use the login API and establish a session.
> user, pw = fake_user.items()[0]
> - req = json.dumps({'userid': user, 'password': pw})
> + req = json.dumps({'username': user, 'password': pw})
> resp = self.request('/login', req, 'POST')
> self.assertEquals(200, resp.status)
> cookie = resp.getheader('set-cookie')
> @@ -1367,7 +1367,7 @@ class RestTests(unittest.TestCase):
> self.assertEquals(200, resp.status)
>
> user, pw = fake_user.items()[0]
> - req = json.dumps({'userid': user, 'password': pw})
> + req = json.dumps({'username': user, 'password': pw})
> resp = self.request('/login', req, 'POST', hdrs)
> self.assertEquals(200, resp.status)
>
> @@ -1388,7 +1388,7 @@ class RestTests(unittest.TestCase):
>
> # Test REST API
> hdrs = {'AUTHORIZATION': ''}
> - req = json.dumps({'userid': 'nouser', 'password': 'badpass'})
> + req = json.dumps({'username': 'nouser', 'password': 'badpass'})
> resp = self.request('/login', req, 'POST', hdrs)
> self.assertEquals(401, resp.status)
>
> @@ -1413,7 +1413,7 @@ class RestTests(unittest.TestCase):
>
> # Execute a login call
> user, pw = fake_user.items()[0]
> - req = json.dumps({'userid': user, 'password': pw})
> + req = json.dumps({'username': user, 'password': pw})
> resp = self.request('/login', req, 'POST', hdrs)
> self.assertEquals(200, resp.status)
> cookie = resp.getheader('set-cookie')
> diff --git a/tests/utils.py b/tests/utils.py
> index b373f34..fe03a1a 100644
> --- a/tests/utils.py
> +++ b/tests/utils.py
> @@ -160,7 +160,7 @@ def patch_auth(sudo=True):
> try:
> return fake_user[username] == password
> except KeyError, e:
> - raise OperationFailed("KCHAUTH0001E", {'userid': 'username',
> + raise OperationFailed("KCHAUTH0001E", {'username': 'username',
> 'code': e.message})
>
> import kimchi.auth
> diff --git a/ui/js/src/kimchi.login_window.js b/ui/js/src/kimchi.login_window.js
> index f18981e..44e5617 100644
> --- a/ui/js/src/kimchi.login_window.js
> +++ b/ui/js/src/kimchi.login_window.js
> @@ -56,10 +56,10 @@ kimchi.login_main = function() {
> return;
> }
>
> - var userName = kimchi.user.getUserID();
> - userName && $('#user-id').val(userName);
> + var userName = kimchi.user.getUserName();
> + userName && $('#username').val(userName);
>
> - var nodeToFocus = ! $('#user-id').val() ? $('#user-id') :
> + var nodeToFocus = ! $('#username').val() ? $('#username') :
> (! $('#password').val() ? $('#password') : $('#btn-login'));
>
> $(nodeToFocus).focus();
> @@ -67,16 +67,16 @@ kimchi.login_main = function() {
>
> var login = function(event) {
>
> - if (!validateNonEmpty(['user-id', 'password'])) {
> + if (!validateNonEmpty(['username', 'password'])) {
> return false;
> }
>
> $('#btn-login').text(i18n['KCHAUTH6002M']).prop('disabled', true);
>
> - var userID = $('#user-id').val();
> - userID && kimchi.user.setUserID(userID);
> + var userName = $('#username').val();
> + userName && kimchi.user.setUserName(userName);
> var settings = {
> - userid: userID,
> + username: userName,
> password: $("#password").val()
> };
>
> @@ -96,7 +96,7 @@ kimchi.login_main = function() {
> }, function() {
> kimchi.message.error.code('KCHAUTH6001E');
> $('#btn-login').prop('disabled', false).text(i18n['KCHAUTH6001M']);
> - placeCursor('user-id');
> + placeCursor('username');
> });
>
> return false;
> diff --git a/ui/js/src/kimchi.user.js b/ui/js/src/kimchi.user.js
> index bd7d20b..9134849 100644
> --- a/ui/js/src/kimchi.user.js
> +++ b/ui/js/src/kimchi.user.js
> @@ -16,17 +16,17 @@
> * limitations under the License.
> */
> kimchi.user = (function() {
> - var getUserID = function() {
> - return kimchi.cookie.get('userid');
> + var getUserName = function() {
> + return kimchi.cookie.get('username');
> };
>
> - var setUserID = function(userID) {
> - kimchi.cookie.set('userid', userID, 365);
> + var setUserName = function(userName) {
> + kimchi.cookie.set('username', userName, 365);
> };
>
> var showUser = function(toShow) {
> if (toShow) {
> - var userName = getUserID();
> + var userName = getUserName();
> userName && $('#user-name').text(userName);
> $('#user').removeClass('not-logged-in');
> return;
> @@ -36,8 +36,8 @@ kimchi.user = (function() {
> };
>
> return {
> - getUserID: getUserID,
> - setUserID: setUserID,
> + getUserName: getUserName,
> + setUserName: setUserName,
> showUser: showUser
> };
> })();
> diff --git a/ui/pages/login-window.html.tmpl b/ui/pages/login-window.html.tmpl
> index b7850e5..3e451c4 100644
> --- a/ui/pages/login-window.html.tmpl
> +++ b/ui/pages/login-window.html.tmpl
> @@ -34,8 +34,8 @@
> <div class="content login-panel">
> <form id="form-login" action="/login" method="POST">
> <div class="row">
> - <input type="text" id="user-id" name="userid" required="required" placeholder="$_("User Name")" />
> - <div id="user-id-msg" class="msg-required"></div>
> + <input type="text" id="username" name="username" required="required" placeholder="$_("User Name")" />
> + <div id="username-msg" class="msg-required"></div>
> </div>
> <div class="row">
> <input type="password" id="password" name="password" required="required" placeholder="$_("Password")" />
More information about the Kimchi-devel
mailing list