2006-12-25 06:04:06 +00:00
|
|
|
from apps.helpsys.models import HelpEntry
|
|
|
|
|
"""
|
|
|
|
|
Help system functions.
|
|
|
|
|
"""
|
2007-01-01 23:38:59 +00:00
|
|
|
def find_topicmatch(pobject, topicstr):
|
2006-12-25 06:04:06 +00:00
|
|
|
"""
|
|
|
|
|
Searches for matching topics based on player's input.
|
|
|
|
|
"""
|
2007-01-01 23:38:59 +00:00
|
|
|
is_staff = pobject.is_staff()
|
2006-12-25 06:04:06 +00:00
|
|
|
if topicstr.isdigit():
|
2007-01-01 23:38:59 +00:00
|
|
|
if is_staff:
|
|
|
|
|
return HelpEntry.objects.filter(id=topicstr)
|
|
|
|
|
else:
|
|
|
|
|
return HelpEntry.objects.filter(id=topicstr).exclude(staff_only=1)
|
2006-12-25 06:04:06 +00:00
|
|
|
else:
|
2007-01-01 23:38:59 +00:00
|
|
|
if is_staff:
|
|
|
|
|
return HelpEntry.objects.filter(topicname__istartswith=topicstr)
|
|
|
|
|
else:
|
|
|
|
|
return HelpEntry.objects.filter(topicname__istartswith=topicstr).exclude(staff_only=1)
|
2006-12-25 06:04:06 +00:00
|
|
|
|
2007-01-01 23:38:59 +00:00
|
|
|
def find_topicsuggestions(pobject, topicstr):
|
2006-12-25 06:04:06 +00:00
|
|
|
"""
|
|
|
|
|
Do a fuzzier "contains" match.
|
|
|
|
|
"""
|
2007-01-01 23:38:59 +00:00
|
|
|
is_staff = pobject.is_staff()
|
|
|
|
|
if is_staff:
|
|
|
|
|
return HelpEntry.objects.filter(topicname__icontains=topicstr)
|
|
|
|
|
else:
|
|
|
|
|
return HelpEntry.objects.filter(topicname__icontains=topicstr).exclude(staff_only=1)
|