View | Details | Raw Unified | Return to bug 46349 | Differences between
and this patch

Collapse All | Expand All

(-)a/management/univention-directory-manager-modules/modules/univention/admin/handlers/users/user.py (-8 / +10 lines)
 Lines 1094-1101   def posixSecondsToLocaltimeDate(seconds): Link Here 
1094
	return time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(seconds))
1094
	return time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(seconds))
1095
1095
1096
1096
1097
def posixDaysToDate(days):
1097
def posixDaysToLocalDate(days):
1098
	return time.strftime("%Y-%m-%d", time.gmtime(long(days) * 3600 * 24))
1098
	return time.strftime("%Y-%m-%d", time.localtime(long(days) * 3600 * 24))
1099
1099
1100
1100
1101
def sambaWorkstationsMap(workstations):
1101
def sambaWorkstationsMap(workstations):
 Lines 1267-1288   def unmapShadowExpireToUserexpiry(oldattr): Link Here 
1267
	# shadowExpire contains the absolute date to expire the account.
1267
	# shadowExpire contains the absolute date to expire the account.
1268
1268
1269
	if 'shadowExpire' in oldattr and len(oldattr['shadowExpire']) > 0:
1269
	if 'shadowExpire' in oldattr and len(oldattr['shadowExpire']) > 0:
1270
		univention.debug.debug(univention.debug.ADMIN, univention.debug.INFO, 'userexpiry: %s' % posixDaysToDate(oldattr['shadowExpire'][0]))
1270
		univention.debug.debug(univention.debug.ADMIN, univention.debug.INFO, 'userexpiry: %s' % posixDaysToLocalDate(oldattr['shadowExpire'][0]))
1271
		if oldattr['shadowExpire'][0] != '1':
1271
		if oldattr['shadowExpire'][0] != '1':
1272
			return posixDaysToDate(oldattr['shadowExpire'][0])
1272
			return posixDaysToLocalDate(oldattr['shadowExpire'][0])
1273
1273
1274
1274
1275
def unmapKrb5ValidEndToUserexpiry(oldattr):
1275
def unmapKrb5ValidEndToUserexpiry(oldattr):
1276
	if 'krb5ValidEnd' in oldattr:
1276
	if 'krb5ValidEnd' in oldattr:
1277
		krb5validend = oldattr['krb5ValidEnd'][0]
1277
		krb5validend = oldattr['krb5ValidEnd'][0]
1278
		univention.debug.debug(univention.debug.ADMIN, univention.debug.INFO, 'krb5validend is: %s' % krb5validend)
1278
		univention.debug.debug(univention.debug.ADMIN, univention.debug.INFO, 'krb5validend is: %s' % krb5validend)
1279
		return "%s-%s-%s" % (krb5validend[0:4], krb5validend[4:6], krb5validend[6:8])
1279
		userexpiry_epoch = calendar.timegm(time.strptime(krb5validend, '%Y%m%d%H%M%SZ'))
1280
		return time.strftime("%Y-%m-%d", time.localtime(userexpiry_epoch))
1280
1281
1281
1282
1282
def unmapSambaKickoffTimeToUserexpiry(oldattr):
1283
def unmapSambaKickoffTimeToUserexpiry(oldattr):
1283
	if 'sambaKickoffTime' in oldattr:
1284
	if 'sambaKickoffTime' in oldattr:
1284
		univention.debug.debug(univention.debug.ADMIN, univention.debug.INFO, 'sambaKickoffTime is: %s' % oldattr['sambaKickoffTime'][0])
1285
		univention.debug.debug(univention.debug.ADMIN, univention.debug.INFO, 'sambaKickoffTime is: %s' % oldattr['sambaKickoffTime'][0])
1285
		return time.strftime("%Y-%m-%d", time.gmtime(long(oldattr['sambaKickoffTime'][0]) + (3600 * 24)))
1286
		return time.strftime("%Y-%m-%d", time.localtime(long(oldattr['sambaKickoffTime'][0]) + (3600 * 24)))
1286
1287
1287
1288
1288
def unmapPasswordExpiry(oldattr):
1289
def unmapPasswordExpiry(oldattr):
 Lines 1293-1299   def unmapPasswordExpiry(oldattr): Link Here 
1293
			shadow_last_change = int(oldattr['shadowLastChange'][0])
1294
			shadow_last_change = int(oldattr['shadowLastChange'][0])
1294
		except ValueError:
1295
		except ValueError:
1295
			univention.debug.debug(univention.debug.ADMIN, univention.debug.WARN, 'users/user: failed to calculate password expiration correctly, use only shadowMax instead')
1296
			univention.debug.debug(univention.debug.ADMIN, univention.debug.WARN, 'users/user: failed to calculate password expiration correctly, use only shadowMax instead')
1296
		return posixDaysToDate(shadow_last_change + shadow_max)
1297
		return posixDaysToLocalDate(shadow_last_change + shadow_max)
1297
1298
1298
1299
1299
def unmapDisabled(oldattr):
1300
def unmapDisabled(oldattr):
 Lines 2193-2199   class object(univention.admin.handlers.simpleLdap): Link Here 
2193
		if self.hasChanged('userexpiry'):
2194
		if self.hasChanged('userexpiry'):
2194
			krb5ValidEnd = ''
2195
			krb5ValidEnd = ''
2195
			if self['userexpiry']:
2196
			if self['userexpiry']:
2196
				krb5ValidEnd = "%s%s%s000000Z" % (self['userexpiry'][0:4], self['userexpiry'][5:7], self['userexpiry'][8:10])
2197
				userexpiry_epoch = time.mktime(time.strptime(self['userexpiry'], "%Y-%m-%d"))
2198
				krb5ValidEnd = time.strftime("%Y%m%d000000Z", time.gmtime(userexpiry_epoch))
2197
				univention.debug.debug(univention.debug.ADMIN, univention.debug.INFO, 'krb5ValidEnd: %s' % krb5ValidEnd)
2199
				univention.debug.debug(univention.debug.ADMIN, univention.debug.INFO, 'krb5ValidEnd: %s' % krb5ValidEnd)
2198
			old_krb5ValidEnd = self.oldattr.get('krb5ValidEnd', '')
2200
			old_krb5ValidEnd = self.oldattr.get('krb5ValidEnd', '')
2199
			if old_krb5ValidEnd != krb5ValidEnd:
2201
			if old_krb5ValidEnd != krb5ValidEnd:

Return to bug 46349