mirror of
https://github.com/zulip/zulip.git
synced 2026-07-09 21:21:47 +08:00
[schema] Fix names of fields in Subscription.
(imported from commit 5f5c643286d348d16caac03419ba3011a8b81eff)
This commit is contained in:
parent
38b30e5997
commit
b761bf030b
@ -94,9 +94,9 @@ class Command(BaseCommand):
|
||||
for i, profile in enumerate(profiles):
|
||||
# Subscribe to some classes.
|
||||
for recipient in recipient_classes[:int(len(recipient_classes) * float(i)/len(profiles)) + 1]:
|
||||
new_subscription = Subscription(userprofile_id=profile,
|
||||
recipient_id=Recipient.objects.get(type="class",
|
||||
type_id=recipient))
|
||||
new_subscription = Subscription(userprofile=profile,
|
||||
recipient=Recipient.objects.get(type="class",
|
||||
type_id=recipient))
|
||||
new_subscription.save()
|
||||
|
||||
# Create some test zephyrs, including:
|
||||
@ -151,7 +151,7 @@ class Command(BaseCommand):
|
||||
elif zephyr_type == "class":
|
||||
zephyr_class = ZephyrClass.objects.get(pk=new_zephyr.recipient.type_id)
|
||||
# Pick a random subscriber to the class
|
||||
new_zephyr.sender = random.choice(Subscription.objects.filter(recipient_id=new_zephyr.recipient.id)).userprofile_id
|
||||
new_zephyr.sender = random.choice(Subscription.objects.filter(recipient=new_zephyr.recipient)).userprofile
|
||||
new_zephyr.instance = zephyr_class.name + str(random.randint(1, 3))
|
||||
saved_data = new_zephyr.instance
|
||||
|
||||
|
||||
@ -15,8 +15,8 @@ def get_display_recipient(recipient):
|
||||
zephyr_class = ZephyrClass.objects.get(pk=recipient.type_id)
|
||||
return zephyr_class.name
|
||||
elif recipient.type == "huddle":
|
||||
user_list = [UserProfile.objects.get(user=s.userprofile_id) for s in
|
||||
Subscription.objects.filter(recipient_id=recipient.id)]
|
||||
user_list = [UserProfile.objects.get(user=s.userprofile) for s in
|
||||
Subscription.objects.filter(recipient=recipient)]
|
||||
return [{'name': user.user.username} for user in user_list]
|
||||
else:
|
||||
user = User.objects.get(pk=recipient.type_id)
|
||||
@ -70,7 +70,7 @@ def create_user_profile(user, realm):
|
||||
# Auto-sub to the ability to receive personals.
|
||||
recipient = Recipient(type_id=profile.pk, type="personal")
|
||||
recipient.save()
|
||||
Subscription(userprofile_id=profile, recipient_id=recipient).save()
|
||||
Subscription(userprofile=profile, recipient=recipient).save()
|
||||
|
||||
class ZephyrClass(models.Model):
|
||||
name = models.CharField(max_length=30)
|
||||
@ -114,8 +114,8 @@ def send_zephyr(**kwargs):
|
||||
# personals to yourself or to someone else, respectively.
|
||||
assert((len(recipients) == 1) or (len(recipients) == 2))
|
||||
elif zephyr.recipient.type == "class" or zephyr.recipient.type == "huddle":
|
||||
recipients = [UserProfile.objects.get(user=s.userprofile_id) for
|
||||
s in Subscription.objects.filter(recipient_id=zephyr.recipient, active=True)]
|
||||
recipients = [UserProfile.objects.get(user=s.userprofile) for
|
||||
s in Subscription.objects.filter(recipient=zephyr.recipient, active=True)]
|
||||
else:
|
||||
raise
|
||||
for recipient in recipients:
|
||||
@ -124,12 +124,12 @@ def send_zephyr(**kwargs):
|
||||
post_save.connect(send_zephyr, sender=Zephyr)
|
||||
|
||||
class Subscription(models.Model):
|
||||
userprofile_id = models.ForeignKey(UserProfile)
|
||||
recipient_id = models.ForeignKey(Recipient)
|
||||
userprofile = models.ForeignKey(UserProfile)
|
||||
recipient = models.ForeignKey(Recipient)
|
||||
active = models.BooleanField(default=True)
|
||||
|
||||
def __repr__(self):
|
||||
return "<Subscription: %r -> %r>" % (self.userprofile_id, self.recipient_id)
|
||||
return "<Subscription: %r -> %r>" % (self.userprofile, self.recipient)
|
||||
|
||||
class Huddle(models.Model):
|
||||
huddle_hash = models.CharField(max_length=40)
|
||||
@ -149,15 +149,15 @@ def get_huddle(id_list):
|
||||
|
||||
# Add subscriptions
|
||||
for uid in id_list:
|
||||
s = Subscription(recipient_id = recipient,
|
||||
userprofile_id = UserProfile.objects.get(id=uid))
|
||||
s = Subscription(recipient = recipient,
|
||||
userprofile = UserProfile.objects.get(id=uid))
|
||||
s.save()
|
||||
return huddle
|
||||
|
||||
def filter_by_subscriptions(zephyrs, user):
|
||||
userprofile = UserProfile.objects.get(user=user)
|
||||
subscribed_zephyrs = []
|
||||
subscriptions = [sub.recipient_id for sub in Subscription.objects.filter(userprofile_id=userprofile, active=True)]
|
||||
subscriptions = [sub.recipient for sub in Subscription.objects.filter(userprofile=userprofile, active=True)]
|
||||
for zephyr in zephyrs:
|
||||
# If you are subscribed to the personal or class, or if you sent the personal, you can see the zephyr.
|
||||
if (zephyr.recipient in subscriptions) or \
|
||||
|
||||
@ -32,9 +32,9 @@ class AuthedTestCase(TestCase):
|
||||
def users_subscribed_to_class(self, class_name):
|
||||
zephyr_class = ZephyrClass.objects.get(name=class_name)
|
||||
recipient = Recipient.objects.get(type_id=zephyr_class.id, type="class")
|
||||
subscriptions = Subscription.objects.filter(recipient_id=recipient)
|
||||
subscriptions = Subscription.objects.filter(recipient=recipient)
|
||||
|
||||
return [subscription.userprofile_id.user for subscription in subscriptions]
|
||||
return [subscription.userprofile.user for subscription in subscriptions]
|
||||
|
||||
def zephyr_stream(self, user):
|
||||
return filter_by_subscriptions(Zephyr.objects.all(), user)
|
||||
|
||||
@ -195,10 +195,10 @@ def zephyr(request):
|
||||
@login_required
|
||||
def subscriptions(request):
|
||||
userprofile = UserProfile.objects.get(user=request.user)
|
||||
subscriptions = Subscription.objects.filter(userprofile_id=userprofile, active=True)
|
||||
subscriptions = Subscription.objects.filter(userprofile=userprofile, active=True)
|
||||
# For now, don't display the subscription for your ability to receive personals.
|
||||
sub_names = [get_display_recipient(sub.recipient_id) for sub in subscriptions
|
||||
if sub.recipient_id.type == "class"]
|
||||
sub_names = [get_display_recipient(sub.recipient) for sub in subscriptions
|
||||
if sub.recipient.type == "class"]
|
||||
|
||||
return render_to_response('zephyr/subscriptions.html',
|
||||
{'subscriptions': sub_names, 'user_profile': userprofile},
|
||||
@ -216,7 +216,7 @@ def manage_subscriptions(request):
|
||||
zephyr_class = ZephyrClass.objects.get(name=sub_name)
|
||||
recipient = Recipient.objects.get(type_id=zephyr_class.id, type="class")
|
||||
subscription = Subscription.objects.get(
|
||||
userprofile_id=user_profile.id, recipient_id=recipient)
|
||||
userprofile=user_profile, recipient=recipient)
|
||||
subscription.active = False
|
||||
subscription.save()
|
||||
|
||||
@ -248,15 +248,15 @@ def add_subscriptions(request):
|
||||
recipient = Recipient(type_id=zephyr_class.pk, type="class")
|
||||
recipient.save()
|
||||
|
||||
subscription = Subscription.objects.filter(userprofile_id=user_profile,
|
||||
recipient_id=recipient)
|
||||
subscription = Subscription.objects.filter(userprofile=user_profile,
|
||||
recipient=recipient)
|
||||
if subscription:
|
||||
subscription = subscription[0]
|
||||
subscription.active = True
|
||||
subscription.save()
|
||||
else:
|
||||
new_subscription = Subscription(userprofile_id=user_profile,
|
||||
recipient_id=recipient)
|
||||
new_subscription = Subscription(userprofile=user_profile,
|
||||
recipient=recipient)
|
||||
new_subscription.save()
|
||||
|
||||
return HttpResponseRedirect(reverse('zephyr.views.subscriptions'))
|
||||
|
||||
Loading…
Reference in New Issue
Block a user