当前位置: 首页>>代码示例>>Python>>正文


Python Login.getID方法代码示例

本文整理汇总了Python中Login.getID方法的典型用法代码示例。如果您正苦于以下问题:Python Login.getID方法的具体用法?Python Login.getID怎么用?Python Login.getID使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Login的用法示例。


在下文中一共展示了Login.getID方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: getMessage

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def getMessage(msgidx, readStamp=True):
	""" 쪽지를 읽어온다 """
	
	mData = Archive("MsgInBox").getValues(msgidx, "Content,Receiver,Sender,Attachments,IsRead")
	
	if mData == None:
		raise SpartaUserError("존재하지 않는 쪽지번호 입니다")
	
	if mData["Receiver"] != Login.getID() and mData["Sender"] != Login.getID():
		raise SpartaUserError("메세지를 볼수있는 권한이 없습니다")
	
	if readStamp and (mData["IsRead"] == False):
		# 스탬핑 처리
		Archive("MsgInBox").Edit(msgidx, IsRead=True)
		
		# 보낸 편지에도 읽기 스템핑
		r_idx = Archive("MsgSent").getValue("MsgSent.RelateIDX == "+str(msgidx), "IDX")
		if r_idx:
			Archive("MsgSent").Edit(r_idx, IsRead=True)			   
	
	outText = mData["Content"]
	
	if mData["Attachments"]:		
		outText += u'<table class="filedownBox"><tr><td>첨부</td><td><a href="/getfile/message/%s">%s</a></td></tr></table>' % ( msgidx, mData["Attachments"])
	
	return outText
开发者ID:onetera,项目名称:sp,代码行数:28,代码来源:Message.py

示例2: removeMessage

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def removeMessage(msgidx):
	
	mData = Archive("MsgInBox").getValues(msgidx, "Receiver,Sender,Attachments")
	
	if mData == None:
		raise SpartaUserError("존재하지 않는 쪽지번호 입니다")
	
	if mData["Receiver"] != Login.getID() and (not CheckAdmin()) and mData["Sender"] != Login.getID():
		raise SpartaAccessError("메세지를 삭제할 수 있는 권한이 없습니다")
	
	r = Archive("MsgInBox").Remove( msgidx )
	#[TODO] 파일삭제 처리!!!	
	return r
开发者ID:onetera,项目名称:sp,代码行数:15,代码来源:Message.py

示例3: sendMessage

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def sendMessage( receiver, subject, content, attachments=None, withSMS=None ):
	""" 쪽지함에 쪽지를 발송	
	"""
	#[TODO] To,CC,BCC에 대한 처리 필요 
	#[TODO] IF not logined !!
	
	smsList = []
	msgIDXs = []
	msgSave = { "Subject": subject, "Content": content, "Sender": Login.getID(), "SenderName": Login.getName() }
   
	if "<" in receiver:
		#ex) Address Parsing :: "정기영" <[email protected]>, "김태희" <[email protected]>  -> ["[email protected]",  "[email protected]"]
		addrsList = re.findall("\<([._,a-zA-Z0-9:\#\@]+)\>+", receiver)
	else:	 
		addrsList = [n.strip() for n in receiver.split(",")]
	
	for recID in addrsList:
		
		userData = Archive("User").getValues( "User.UserID == "+ recID, "Name,HandPhone" )
		if userData:
			msgSave["Receiver"] = recID
			
			result_IDX = Archive("MsgInBox").New(**msgSave)
			
			if result_IDX:
				msgIDXs.append( result_IDX )
				if userData["HandPhone"] and not userData["HandPhone"].replace("-","") in smsList:
					smsList.append( str(userData["HandPhone"].replace("-","")) )
				
				sentMsg = { "RelateIDX": result_IDX, "Subject": subject, "Content": content, "Receiver": recID, "ReceiverName": userData["Name"], "Sender": Login.getID() } 
				r = Archive("MsgSent").New( **sentMsg )
	
	if attachments:
		#[TODO] 임시 코드입니다. 멀티센딩에서 업된 파일에 대한 레퍼런스 카운트가 이상적이나 일단 그냥 복제형태로 갑니다.
		if type(attachments) == unicode:
			attachments = attachments.encode("utf8")
		
		uploadFile = Files.getRootDir() + attachments
		fileName = os.path.split(attachments)[1]
		
		if os.path.exists( uploadFile ):
			for ridx in msgIDXs:
				if str(ridx).isdigit():
					targetFile = "/data/message/%s.%s" % ( fileName, ridx )
					shutil.copy2( uploadFile, Files.getSpartaDir() + targetFile )
					msgMod = { "IDX" : ridx, "Attachments" : "%s" % fileName }
					r = Archive( "MsgInBox" ).New( **msgMod )
			os.remove(uploadFile)
	
	if withSMS and smsList:		   
		SMS.send( sendMsg=u"스팔타쪽지>"+msgSave["Subject"], recvList=smsList )
	
	return len(msgIDXs)
开发者ID:onetera,项目名称:sp,代码行数:55,代码来源:Message.py

示例4: removeMessage

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def removeMessage(msgidx):
	
	msg_receiver_q = Session.query(MsgReceiver).filter_by(idx = msgidx).first()
	
	if None == msg_receiver_q:
		raise SpartaUserError("존재하지 않는 쪽지입니다")

	# 로그인한 사용자가 메시지를 받은 사용자가 아닌 경우 삭제할 수 없다는 메시지를 출력하게 한다.
	if msg_receiver_q.ReceiverID != Login.getID() and (not CheckAdmin()):
		raise SpartaAccessError("메시지를 삭제할 수 있는 권한이 없습니다")

	msg_receiver_q.IsDelete = u"1"

	Session.commit()

	# 항상 1을 반환한다.
	return 1
开发者ID:onetera,项目名称:sp,代码行数:19,代码来源:nMessage.py

示例5: setPassword

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def setPassword( userid, newpassword):
	
	if userid != Login.getID() and (not CheckAdmin()):
		raise SpartaAccessError("패스워드를 변경할수 있는 권한이 없습니다.")
		
	useridx = getIDX( userid )
	
	if useridx:
		hashedPass = hashlib.md5( newpassword ).hexdigest()    
		r = 0 < Archive("User").Edit( useridx, Password=hashedPass )
		
	else:
		raise SpartaError("[버그] 아이디의 IDX 정보가 잘못되었습니다.")
	
	if r:
		return True
	else:
		raise SpartaError("패스워드를 수정하지 못했습니다.")
开发者ID:onetera,项目名称:sp,代码行数:20,代码来源:User.py

示例6: cancelMessage

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def cancelMessage(sentidx):
	
	mData = Archive("MsgSent").getValues(msgidx, "RelateIDX,Sender,Attachments")
	
	if mData == None:
		raise SpartaUserError("존재하지 않는 쪽지번호 입니다")
	
	if mData["Sender"] != Login.getID() and (not CheckAdmin()):
		raise SpartaUserError("메세지를 삭제할 수 있는 권한이 없습니다") 
	
	rData = Archive("MsgInBox").getValue( mData["RelateIDX"], "IDX,IsRead")
	
	if rData:
		if rData["IsRead"] == False:
			return removeMessage( rData["IDX"] )
		else:
			raise SpartaUserError("발송된 메세지는 이미 읽은 메세지입니다")
	else:
		raise SpartaUserError("발송된 메세지는 이미 삭제되었습니다")
	
	return int(0)
开发者ID:onetera,项目名称:sp,代码行数:23,代码来源:nMessage.py

示例7: getMessage

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def getMessage(msgReceiver_idx, readStamp=True):
	""" 쪽지를 읽어온다 """

	msgReceiver_q = Session.query(MsgReceiver).outerjoin(Msg).add_entity(Msg)

	msg = msgReceiver_q.filter(MsgReceiver.idx == msgReceiver_idx).first()

	if None == msg:
		raise SpartaUserError("존재하지 않는 쪽지입니다")

	# 로그인 중인 사용자와 메시지를 받은 사용자 ID를 비교하여 일치하지 않으면 권한 오류를 발생시킨다.
	if Login.getID() != msg[0].ReceiverID:
		raise SpartaUserError("메시지를 볼 수 있는 권한이 없습니다")
   
	# 읽음여부 수정
	if u"0" == msg[0].IsRead:
		msg[0].IsRead = u"1"

	Session.commit()

	outText = msg[1].Content

	# 첨부파일 가져오기
	msgAttach_q = Session.query(MsgAttach).filter_by(Msg_IDX = msg[1].idx).all()

	attach_text = []

	if len(msgAttach_q) > 0:
		attach_text.append("<table class=\"filedownBox\">")
		attach_text.append(u"<tr><td rowspan=\"%d\">첨부</td><td>" % len(msgAttach_q))

		for attach_item in msgAttach_q:
			attach_text.append("<a href=\"/getfile/nmessage/%d\">%s</a><br />" % (attach_item.idx, attach_item.OriginalFileName) )

		attach_text.append("</td></tr></table>")

	attach_text = "".join(attach_text)

	return "<p>%s</p>%s" % (outText, attach_text)
开发者ID:onetera,项目名称:sp,代码行数:41,代码来源:nMessage.py

示例8: removeSendMessage

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def removeSendMessage(sendidx):

	# 메시지 정보를 가져온다.
	msg_q = Session.query(Msg).filter(Msg.idx == sendidx)
	if msg_q.count() == 0:
		raise SpartaUserError("존재하지 않는 쪽지입니다")

	msg = msg_q.first()

	if msg.SenderID != Login.getID() and (not CheckAdmin()):
		raise SpartaAccessError("메시지를 삭제할 수 있는 권한이 없습니다") 

	# 수신자 지우기
	receiver_q = Session.query(MsgReceiver).filter(MsgReceiver.Msg_IDX == sendidx)
	if receiver_q.count() > 0:
		# 수신자중에 한명이라도 메시지를 읽지 않았다면 쪽지를 삭제하지 못하게 한다.
		for receiver_user in receiver_q.all():
			if receiver_user.IsDelete == u"0":
				return u"%s 사용자가 아직 쪽지를 읽지 않았습니다" % receiver_user.ReceiverID
		
		receiver_q.delete()
		Session.commit()

	# 우선 첨부파일 정보를 가져온다.
	attach_q = Session.query(MsgAttach).filter(MsgAttach.Msg_IDX == sendidx).all()
	if len(attach_q) > 0:
		for attach_info in attach_q:
			# File Exists
			if os.path.exists(attach_info.NewFileName):
				os.unlink(attach_info.NewFileName)
		Session.delete(attach_info)
		Session.commit()

	# 본 메시지 삭제
	msg_q = Session.delete(msg)
	Session.commit()
	
	return 1
开发者ID:onetera,项目名称:sp,代码行数:40,代码来源:nMessage.py

示例9: getNoReadCount

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def getNoReadCount():
	""" 읽지않은 쪽지 갯수를 반환한다 """
	return Session.query(MsgReceiver).filter(and_(MsgReceiver.IsRead == u'0', MsgReceiver.ReceiverID == Login.getID())).count()
开发者ID:onetera,项目名称:sp,代码行数:5,代码来源:nMessage.py

示例10: sendMessage

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def sendMessage( receiver, receiverCC, receiverBCC, subject, content, attachments=None, withSMS=None ):
	""" 쪽지함에 쪽지를 발송"""
	
	#[TODO] IF not logined !!

	withEmail = True

	emailList = []
	smsList = []
	msgIDXs = []

	receiverTo = getReceiver(receiver)
	receiverCc = getReceiver(receiverCC)
	receiverBcc = getReceiver(receiverBCC)
	
	# 쪽지 내용 저장
	msg = Msg()
	msg.SenderID = unicode(Login.getID())
	msg.SenderName = unicode(Login.getName())
	msg.Subject = unicode(subject)
	msg.Content = unicode(content)
	msg.withSMS = unicode(withSMS)
	msg.CreateDate = datetime.datetime.now() 
	
	Session.add(msg)
	Session.commit()
	
	# To들에게 보내기
	setMsgReceiver(receiverTo, msg.idx, "0")
	# CC들에게 보내기
	setMsgReceiver(receiverCc, msg.idx, "1")
	# BCC들에게 보내기
	setMsgReceiver(receiverBcc, msg.idx, "2")

	# SMS 발송 관련 처리
	if withSMS:
		smsList = list()
		receiverList = receiverTo + receiverCc +receiverBcc
		for msg_receiver in receiverList:
			if type(msg_receiver) != dict:
				continue
			smsList.append(msg_receiver["HandPhone"])

		if len(smsList) > 0:
			SMS.send(sendMsg=u"[sparta] %s" % msg.Content[:70], recvList=smsList)
	
	if withEmail:
		senderData = getReceiver("<%s>" % Login.getID())[0]["GwID"]
		emailList = list()
		receiverList = receiverTo + receiverCc +receiverBcc
		for msg_receiver in receiverList:
			if type(msg_receiver) != dict:
				continue			
			if str(msg_receiver["GwID"]).startswith("D"):
				emailList.append( str(msg_receiver["GwID"])+"@idea.co.kr" )
		if len(emailList) > 0:
			sendEmail("%[email protected]" % senderData, msg.Subject, msg.Content, recvList=emailList)
   
	if attachments:
		objUpload = Upload()
		objUpload.MsgInitialize()
		
		for attach_item in attachments:
			new_file = objUpload.upload_file_move(attach_item)

			rowMsgAttach = MsgAttach()
			rowMsgAttach.Msg_IDX = unicode(msg.idx)
			rowMsgAttach.OriginalFileName = unicode(new_file["O_PATH"])
			rowMsgAttach.NewFileName = unicode(new_file["D_PATH"])
			rowMsgAttach.FileSize = unicode(new_file["SIZE"])

			Session.add(rowMsgAttach)

		Session.commit()
	return len(receiverTo)
开发者ID:onetera,项目名称:sp,代码行数:77,代码来源:nMessage.py

示例11: getLoginID

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def getLoginID():
	return Login.getID()
开发者ID:onetera,项目名称:sp,代码行数:4,代码来源:__init__.py

示例12: getNoReadCount

# 需要导入模块: import Login [as 别名]
# 或者: from Login import getID [as 别名]
def getNoReadCount():
	""" 읽지않은 쪽지 갯수를 반환한다 """
	
	CntNonRead = Archive.RunQuery("select count(IDX) from MsgInBox where Receiver = :id and IsRead =0", id=Login.getID() )[0][0]	
	return CntNonRead
开发者ID:onetera,项目名称:sp,代码行数:7,代码来源:Message.py


注:本文中的Login.getID方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。