Add methods of filling for template variables ur_group and ur_fullname

develop
Самоукин Алексей 14 years ago
parent e113dc2800
commit 2e26549360

@ -18,6 +18,7 @@ import re
import os
import types
import filecmp
import pwd, grp
import cl_datavars
class clLocale:
@ -600,3 +601,35 @@ class fillVars(object, cl_datavars.glob_attr):
elif clock.lower() == 'local':
return clock.lower()
return "local"
def get_ur_login(self):
"""Имя пользователя"""
uid = os.getuid()
try:
userName = pwd.getpwuid(uid).pw_name
except:
return ""
return userName
def get_ur_group(self):
"""Название группы пользователя"""
userName = self.Get('ur_login')
groupName = ""
if userName:
try:
gid = pwd.getpwnam(userName).pw_gid
groupName = grp.getgrgid(gid).gr_name
except:
return ""
return groupName
def get_ur_fullname(self):
"""Полное имя пользователя"""
userName = self.Get('ur_login')
fullName = ""
if userName:
try:
fullName = pwd.getpwnam(userName).pw_gecos
except:
return ""
return fullName

@ -42,7 +42,7 @@ tr.setLanguage(sys.modules[__name__])
class _shareTermsFunction:
"""Общие аттрибуты для классов _terms и templateFunctions"""
_reFunctionArgvInSquareBrackets = "a-zA-Z0-9_\-\+\,\*\/\.\'\"~\\\\"
_reFunctionArgvInSquareBrackets = "a-zA-Z0-9_\-\+\,\*\/\.\'\"~\\\\ "
_reFunctionArgvText = "[%s]"%_reFunctionArgvInSquareBrackets
# регулярное выражение для поиска функции в шаблоне
_reFunctionText = "([a-zA-Z0-9\_\-]+)\(%s+\)" %_reFunctionArgvText
@ -3406,7 +3406,7 @@ re.M|re.S)
"'chown %s %s'"%(owner, nameDirconfig))
return False
return True
applyDir = newDir
# Родительская директория
@ -3505,7 +3505,7 @@ re.M|re.S)
strUid, strGid = owner.split(":")
import pwd
try:
uid = pwd.getpwnam(strUid)[2]
uid = pwd.getpwnam(strUid).pw_uid
except:
self.setError(_("Not user in this system: ") + strUid)
self.setError(_("False value 'chown' in template")+\
@ -3513,7 +3513,7 @@ re.M|re.S)
return (applyDir, False)
try:
import grp
gid = grp.getgrnam(strGid)[2]
gid = grp.getgrnam(strGid).gr_gid
except:
self.setError(_("Not group in this system: ")+strGid)
self.setError(_("False value 'chown' in template") +\
@ -3808,7 +3808,7 @@ re.M|re.S)
strUid, strGid = owner.split(":")
import pwd
try:
uid = pwd.getpwnam(strUid)[2]
uid = pwd.getpwnam(strUid).pw_uid
except:
self.setError(_("Not user in this system: ") + strUid)
self.setError(_("False value 'chown' in template") +\
@ -3816,7 +3816,7 @@ re.M|re.S)
return (applyFiles, False)
try:
import grp
gid = grp.getgrnam(strGid)[2]
gid = grp.getgrnam(strGid).gr_gid
except:
self.setError(_("Not group in this system: ")+strGid)
self.setError(_("False value 'chown' in template") +\

@ -110,3 +110,9 @@ class Data:
#Логин пользователя
ur_login = {'mode':"w"}
#Название группы пользователя
ur_group = {'mode':"w"}
#Полное имя пользователя
ur_fullname = {'mode':"w"}

Loading…
Cancel
Save