31112: Scrat

MOC-74277154 parts
MOC-74277 31112: Scrat

The Building Instructions for this MOC can be found on an external site:

Alt This MOC can be built using only the parts from LEGO set 31112-1 Wild Lion !
Want to see more MOCS like this? Create an account to find MOCs you can build from the parts you already own

FOLLOWERS

2752

LIKES

Scrat (some kind of hybrid between squirrel and rat from Ice Age animated movies) is another "lion alternative evergreen". It was originally built out of set 4884 by Nathanael Kuipers almost decade ago. I remember how I built it with help of pictures from brickshelf and took it to several exhibitions and it always took a lot of attention. So this one built out of set 31112 is my little tribute to Nathanael's famous model. It features moving legs, arms, head and tail. It is also supplemented with its lovely acorn.






This MOC is an Alt Alternate Build of the following: Compare MOC-74277 to 31112-1

Wild Lion
31112-1
(224 parts)
Creator > Creator 3-in-1 2021
to your account to add or reply to comments.
  • Avatar image for Rebrickable user Logui
    1 year, 9 months ago Logui Level 17 MOC Designer
    A superb creation that has been mounted for a long time and will surely continue to be so! Well done!
  • Avatar image for Rebrickable user Groundedbuilder
    1 year, 10 months ago Groundedbuilder Level 18 MOC Designer
    Love it! One of my fav Disney characters in one of my fav Disney movies!
  • Avatar image for Rebrickable user Pichus_Bricks
    2 years, 4 months ago Pichus_Bricks Level 7 MOC Designer
    I have this set, but I never thought that I can build Scrat from it!
  • Avatar image for Rebrickable user wolflord
    2 years, 10 months ago wolflord Level 15 MOC Designer
    scrat be da best ever!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1
  • Avatar image for Rebrickable user alt-jax
    3 years, 4 months ago alt-jax Level 16
    Such a cool and cute build, really capture Scrat, kudos for sure! Please build more alt builds.
    I posted pic.
  • Avatar image for Rebrickable user Aloomineeum
    4 years ago Aloomineeum Level 7
    I would LOVE to build this!  Although, it appears that the link is broken.  :(
    • Avatar image for Rebrickable user mic8per
      4 years ago mic8per Level 21 MOC Designer
      The link works fine for me.
      • Avatar image for Rebrickable user Aloomineeum
        4 years ago Aloomineeum Level 7
        I'm not sure what's up, it just keeps loading a blank external page for me.
  • Avatar image for Rebrickable user pluTOMium
    4 years, 6 months ago pluTOMium Level 22 MOC Designer
    One of the best alternative builds for this set! Thank you also for making instructions free to all of us!
  • Avatar image for Rebrickable user Macharius
    4 years, 7 months ago Macharius Level 19 MOC Designer PRO
    Really really great Alternate.
    My 6 year old son detected that and wanted immediately build it. He had no problems with any step in the instructions.
    Thank you for sharing that (for free) !
  • Avatar image for Rebrickable user Ursalophia
    4 years, 7 months ago Ursalophia Level 14 MOC Designer
    He looks just perfect, as if the set was made for this, incredible!
    • Avatar image for Rebrickable user Tomik
      4 years, 7 months ago Tomik Level 26 Designed this MOC DESIGNER
      Thanks. It's nice to hear that you like it so much.
  • Avatar image for Rebrickable user Dafeld
    4 years, 8 months ago Dafeld Level 29 MOC Approver PRO
    My family and I watched "Ice Age II" yesterday and I showed my children your Scrat afterwards. They directly recognized him and love the model. Even better: Your build survived their love and proved to be perfectly playable! Thank you for sharing and the fun we had as a family! (I also added a photo.)
    Feel free to build my MOC of the set in return!
    • Avatar image for Rebrickable user Tomik
      4 years, 7 months ago Tomik Level 26 Designed this MOC DESIGNER
      It's nice to hear that you enjoyed my model so much. I saw your X-wing and it is really unexpected alternative model for lion.
  • Avatar image for Rebrickable user tvroenho
    4 years, 8 months ago tvroenho Level 14
    What a sweet little build is this!
    I built his 'big brother' as well and submitted a picture of them together.
    The expression in the face with the big eyes is spot on!
    Another great MOC, Tomik! Congratulations!
    • Avatar image for Rebrickable user Tomik
      4 years, 8 months ago Tomik Level 26 Designed this MOC DESIGNER
      Thank you for your comment. Another two alternative models from this set are coming soon... ;-)
      • Avatar image for Rebrickable user 10greg
        4 years, 8 months ago 10greg Level 22 MOC Designer
        Ooh, can't wait for that!!!
  • Avatar image for Rebrickable user Tobysaurusrex10
    4 years, 8 months ago Tobysaurusrex10 Level 7
    Its awesome haha! But his acorn will roll away...
    • Avatar image for Rebrickable user Tomik
      4 years, 8 months ago Tomik Level 26 Designed this MOC DESIGNER
      And he will get it big trouble while trying to catch it again...
  • Avatar image for Rebrickable user Nicole1
    4 years, 9 months ago Nicole1 Level 19 MOC Designer
    Incredible alternate.
  • Avatar image for Rebrickable user NKubate
    4 years, 9 months ago NKubate Level 17 MOC Designer DESIGNER
    Wonderful! You really captured the spirit of Scrat. Your kind reference to my model is also much appreciated. Glad to know my work has inspired you, and I'm looking forward to seeing what else you have in store for us in the future!
    • Avatar image for Rebrickable user Tomik
      4 years, 9 months ago Tomik Level 26 Designed this MOC DESIGNER
      Thank you for your comment. I'm glad you like it.
  • Avatar image for Rebrickable user 10greg
    4 years, 9 months ago 10greg Level 22 MOC Designer
    That's one truly great alternate!!! I love it!!! And nicely built, too. My new favourite alternate of this set! My favourite parts are the tail, the head and the acorn. Fan pics are waiting for approval :)

Rebrickable does not sell LEGO Parts.

We provide links to third-party stores that sell LEGO products. If you use these stores, you are not buying from Rebrickable. Click the button below to search the stores.

DJDT

Time

Resource usage

Resource Value
User CPU time 894.762 msec
System CPU time 10.726 msec
Total CPU time 905.488 msec
Elapsed time 963.779 msec
Context switches 650 voluntary, 6 involuntary

Browser timing

Timing attribute Timeline Milliseconds since navigation start (+length)

SQL queries from 1 connection

  • default 63.10 ms (263 queries including 241 similar and 125 duplicates )
Query Timeline Time (ms) Action
SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector",
       "lego_moc"."baseset_ptr_id",
       "lego_moc"."designer_id",
       "lego_moc"."detail_url",
       "lego_moc"."gallery_url",
       "lego_moc"."bi_url",
       "lego_moc"."cad_url",
       "lego_moc"."video",
       "lego_moc"."bi_type",
       "lego_moc"."is_for_sale",
       "lego_moc"."is_hosted",
       "lego_moc"."cost",
       "lego_moc"."currency_id",
       "lego_moc"."parent_set_1_id",
       "lego_moc"."parent_set_2_id",
       "lego_moc"."parent_set_3_id",
       "lego_moc"."parent_set_4_id",
       "lego_moc"."parent_set_5_id",
       "lego_moc"."parent_inv_1_id",
       "lego_moc"."parent_inv_2_id",
       "lego_moc"."parent_inv_3_id",
       "lego_moc"."parent_inv_4_id",
       "lego_moc"."parent_inv_5_id",
       "lego_moc"."parent_type",
       "lego_moc"."is_allowed_premium",
       "lego_moc"."is_locked",
       "lego_moc"."last_social_post",
       "lego_moc"."is_review_requested",
       "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr",
       T4."id",
       T4."parent_id",
       T4."name",
       T4."slug",
       T4."set_count",
       T4."t1_id",
       T4."t1_name",
       T4."t2_name",
       T4."t3_name",
       T4."lego_blurb",
       T4."banner_img",
       T4."descr",
       T5."id",
       T5."parent_id",
       T5."name",
       T5."slug",
       T5."set_count",
       T5."t1_id",
       T5."t1_name",
       T5."t2_name",
       T5."t3_name",
       T5."lego_blurb",
       T5."banner_img",
       T5."descr",
       "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors",
       "accounts_userplan"."user_id",
       "accounts_userplan"."plan_id",
       "accounts_userplan"."expiry_date",
       "accounts_userplan"."last_paid_date",
       "accounts_userplan"."is_subscription_active",
       "accounts_userplan"."subscription_period",
       "accounts_userplan"."payment_source",
       "accounts_userplan"."stripe_customer_id",
       "accounts_userplan"."stripe_subscription_id",
       "accounts_userplan"."paypal_subscription_id",
       "accounts_userplan"."base_free_plan_id",
       "accounts_userplan"."is_reminder_sent",
       "plans_plan"."id",
       "plans_plan"."type",
       "plans_plan"."version",
       "plans_plan"."stripe_id",
       "plans_plan"."paypal_id",
       "plans_plan"."cost_single",
       "plans_plan"."cost_monthly",
       "plans_plan"."cost_yearly",
       T10."id",
       T10."set_num",
       T10."name",
       T10."year",
       T10."theme_id",
       T10."set_type",
       T10."num_parts",
       T10."default_inventory_id",
       T10."is_active",
       T10."is_accessory",
       T10."added_dt",
       T10."added_by_id",
       T10."last_modified_dt",
       T10."last_modified_by_id",
       T10."last_checked_for_bi",
       T10."descr",
       T10."primary_photo_id",
       T10."is_gear",
       T10."is_book",
       T10."search_vector",
       T10."mfhash_vector",
       "lego_setstatstotal"."set_id",
       "lego_setstatstotal"."hits",
       "lego_setstatstotal"."builds",
       "lego_setstatstotal"."likes",
       "lego_setstatstotal"."bi_downloads",
       "lego_setstatstotal"."featured_hits",
       "lego_setstatstotal"."user_hits"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 INNER JOIN
"lego_theme"
    ON
("lego_baseset"."theme_id" = "lego_theme"."id")
  LEFT OUTER JOIN
"lego_theme" T4
    ON
("lego_theme"."parent_id" = T4."id")
  LEFT OUTER JOIN
"lego_theme" T5
    ON
(T4."parent_id" = T5."id")
 INNER JOIN
"lego_designer"
    ON
("lego_moc"."designer_id" = "lego_designer"."user_ptr_id")
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
  LEFT OUTER JOIN
"accounts_userplan"
    ON
("auth_user"."id" = "accounts_userplan"."user_id")
  LEFT OUTER JOIN
"plans_plan"
    ON
("accounts_userplan"."plan_id" = "plans_plan"."id")
  LEFT OUTER JOIN
"lego_baseset" T10
    ON
("lego_moc"."parent_set_1_id" = T10."id")
  LEFT OUTER JOIN
"lego_setstatstotal"
    ON
("lego_baseset"."id" = "lego_setstatstotal"."set_id")
 WHERE
"lego_baseset"."set_num" = 'MOC-74277'
 LIMIT
21
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T4 ON ("lego_theme"."parent_id" = T4."id") LEFT OUTER JOIN "lego_theme" T5 ON (T4."parent_id" = T5."id") INNER JOIN "lego_designer" ON ("lego_moc"."designer_id" = "lego_designer"."user_ptr_id") INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") LEFT OUTER JOIN "accounts_userplan" ON ("auth_user"."id" = "accounts_userplan"."user_id") LEFT OUTER JOIN "plans_plan" ON ("accounts_userplan"."plan_id" = "plans_plan"."id") LEFT OUTER JOIN "lego_baseset" T10 ON ("lego_moc"."parent_set_1_id" = T10."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE "lego_baseset"."set_num" = 'MOC-74277' LIMIT 21
2.50

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(423)
  moc = Moc.all_objects.select_related('designer', 'stats').get(set_num=set_num)

SELECT DISTINCT ("taggit_taggeditem"."object_id") AS "_prefetch_related_val",
       "taggit_tag"."id",
       "taggit_tag"."name",
       "taggit_tag"."slug"
  FROM
"taggit_tag"
 INNER JOIN
"taggit_taggeditem"
    ON
("taggit_tag"."id" = "taggit_taggeditem"."tag_id")
 INNER JOIN
"django_content_type"
    ON
("taggit_taggeditem"."content_type_id" = "django_content_type"."id")
 WHERE
("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'moc' AND "taggit_taggeditem"."object_id" IN (95833))
SELECT ••• FROM "taggit_tag" INNER JOIN "taggit_taggeditem" ON ("taggit_tag"."id" = "taggit_taggeditem"."tag_id") INNER JOIN "django_content_type" ON ("taggit_taggeditem"."content_type_id" = "django_content_type"."id") WHERE ("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'moc' AND "taggit_taggeditem"."object_id" IN (95833))
0.31

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(423)
  moc = Moc.all_objects.select_related('designer', 'stats').get(set_num=set_num)

SELECT "lego_inventory"."id",
       "lego_inventory"."set_id",
       "lego_inventory"."version",
       "lego_inventory"."name",
       "lego_inventory"."is_active",
       "lego_inventory"."num_parts",
       "lego_inventory"."num_versions"
  FROM
"lego_inventory"
 WHERE
("lego_inventory"."set_id" = 95833 AND "lego_inventory"."version" = 1)
 LIMIT
21
SELECT ••• FROM "lego_inventory" WHERE ("lego_inventory"."set_id" = 95833 AND "lego_inventory"."version" = 1) LIMIT 21
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(523)
  inventory = get_object_or_404(Inventory.all_objects, set=moc, version=inventory_version)

SELECT "lego_changelog"."id",
       "lego_changelog"."timestamp",
       "lego_changelog"."user_id",
       "lego_changelog"."model",
       "lego_changelog"."instance_id",
       "lego_changelog"."set_num",
       "lego_changelog"."part_num",
       "lego_changelog"."old_value",
       "lego_changelog"."new_value"
  FROM
"lego_changelog"
 WHERE
"lego_changelog"."set_num" = 'MOC-74277'
 ORDER BY
"lego_changelog"."timestamp" DESC
SELECT ••• FROM "lego_changelog" WHERE "lego_changelog"."set_num" = 'MOC-74277' ORDER BY "lego_changelog"."timestamp" DESC
10.54

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(538)
  changes = moc.get_change_summary()

/home/nathan/rb/site/./lego/models/sets.py in get_change_summary(1121)
  changes = ChangeLog.get_changes(set_num=self.set_num)

/home/nathan/rb/site/./lego/models/changes.py in get_changes(276)
  if len(changes) > 0:

SELECT "lego_mocinstructions"."id",
       "lego_mocinstructions"."moc_id",
       "lego_mocinstructions"."uploaded",
       "lego_mocinstructions"."file_size",
       "lego_mocinstructions"."to_be_uploaded",
       "lego_mocinstructions"."s3file_id",
       "lego_files_s3file"."id",
       "lego_files_s3file"."file_size",
       "lego_files_s3file"."last_modified",
       "lego_files_s3file"."aws_mi_file",
       "lego_files_s3file"."linode_si_file",
       "lego_files_s3file"."linode_mi_file",
       "lego_files_s3file"."linode_media_file"
  FROM
"lego_mocinstructions"
  LEFT OUTER JOIN
"lego_files_s3file"
    ON
("lego_mocinstructions"."s3file_id" = "lego_files_s3file"."id")
 WHERE
"lego_mocinstructions"."moc_id" = 95833
SELECT ••• FROM "lego_mocinstructions" LEFT OUTER JOIN "lego_files_s3file" ON ("lego_mocinstructions"."s3file_id" = "lego_files_s3file"."id") WHERE "lego_mocinstructions"."moc_id" = 95833
0.30

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(548)
  context['bi_files'] = MocInstructions.get_moc_files(moc)

/home/nathan/rb/site/./lego/models/mocs.py in get_moc_files(2066)
  files = sorted(files, key=lambda x: str(x.file))

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "accounts_userplan"."user_id",
       "accounts_userplan"."plan_id",
       "accounts_userplan"."expiry_date",
       "accounts_userplan"."last_paid_date",
       "accounts_userplan"."is_subscription_active",
       "accounts_userplan"."subscription_period",
       "accounts_userplan"."payment_source",
       "accounts_userplan"."stripe_customer_id",
       "accounts_userplan"."stripe_subscription_id",
       "accounts_userplan"."paypal_subscription_id",
       "accounts_userplan"."base_free_plan_id",
       "accounts_userplan"."is_reminder_sent"
  FROM
"auth_user"
  LEFT OUTER JOIN
"accounts_userplan"
    ON
("auth_user"."id" = "accounts_userplan"."user_id")
 WHERE
("auth_user"."is_active" AND "auth_user"."id" = 21286)
 LIMIT
21
SELECT ••• FROM "auth_user" LEFT OUTER JOIN "accounts_userplan" ON ("auth_user"."id" = "accounts_userplan"."user_id") WHERE ("auth_user"."is_active" AND "auth_user"."id" = 21286) LIMIT 21
0.15

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(622)
  context['designer_ga_tracking_id'] = moc.designer.get_ga_tracking_id()

/home/nathan/rb/site/./lego/models/designers.py in get_ga_tracking_id(89)
  user = ProxyUser.objects.get(id=self.id)  # Designer class won't have options pre-loaded so do a lookup instead

SELECT ("auth_user_groups"."user_id") AS "_prefetch_related_val_user_id",
       "auth_group"."id",
       "auth_group"."name"
  FROM
"auth_group"
 INNER JOIN
"auth_user_groups"
    ON
("auth_group"."id" = "auth_user_groups"."group_id")
 WHERE
"auth_user_groups"."user_id" IN (21286)
SELECT ••• FROM "auth_group" INNER JOIN "auth_user_groups" ON ("auth_group"."id" = "auth_user_groups"."group_id") WHERE "auth_user_groups"."user_id" IN (21286)
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(622)
  context['designer_ga_tracking_id'] = moc.designer.get_ga_tracking_id()

/home/nathan/rb/site/./lego/models/designers.py in get_ga_tracking_id(89)
  user = ProxyUser.objects.get(id=self.id)  # Designer class won't have options pre-loaded so do a lookup instead

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'personalisation' AND "accounts_usersetting"."user_id" = 21286)
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'personalisation' AND "accounts_usersetting"."user_id" = 21286)
0.20

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(622)
  context['designer_ga_tracking_id'] = moc.designer.get_ga_tracking_id()

/home/nathan/rb/site/./lego/models/designers.py in get_ga_tracking_id(90)
  ga_tracking_id = user.get_personalisation_option('ga_tracking_id')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_personalisation_option(175)
  options = self.get_personalisation_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_personalisation_options(167)
  if len(self.personalisation_options) == 0:

SELECT COUNT(*) AS "__count"
  FROM
"django_comments"
 WHERE
("django_comments"."content_type_id" = 31 AND NOT "django_comments"."is_removed" AND "django_comments"."object_pk" = '95833')
SELECT ••• FROM "django_comments" WHERE ("django_comments"."content_type_id" = 31 AND NOT "django_comments"."is_removed" AND "django_comments"."object_pk" = '95833')
1.36

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(637)
  context['num_comments'] = Comment.objects.filter(object_pk=moc.id, content_type=ContentType.objects.get_for_model(moc), is_removed=False).count()

SELECT "countries_plus_country"."iso",
       "countries_plus_country"."iso3",
       "countries_plus_country"."iso_numeric",
       "countries_plus_country"."fips",
       "countries_plus_country"."name",
       "countries_plus_country"."capital",
       "countries_plus_country"."area",
       "countries_plus_country"."population",
       "countries_plus_country"."continent",
       "countries_plus_country"."tld",
       "countries_plus_country"."currency_code",
       "countries_plus_country"."currency_symbol",
       "countries_plus_country"."currency_name",
       "countries_plus_country"."phone",
       "countries_plus_country"."postal_code_format",
       "countries_plus_country"."postal_code_regex",
       "countries_plus_country"."languages",
       "countries_plus_country"."geonameid",
       "countries_plus_country"."neighbours",
       "countries_plus_country"."equivalent_fips_code"
  FROM
"countries_plus_country"
 WHERE
"countries_plus_country"."iso" = 'US'
 LIMIT
21
SELECT ••• FROM "countries_plus_country" WHERE "countries_plus_country"."iso" = 'US' LIMIT 21
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb/templatetags/rb_geo.py in geo_currency(20)
  geo_data = user.geo.get_user_currency()

/home/nathan/rb/site/./geo/geo.py in get_user_currency(252)
  country = Country.objects.get(iso=country_code)

412 </a>
413 </li>
414 <li class="hidden-xs">
415 {% geo_currency request.user %}
416 </li>
417 {% comment %}
418 <li class="hidden-xs hidden-sm">
419 <a href={% if request.user.is_authenticated %}"{% url 'user_profile_settings' request.user.get_username %}#personalisation"{% else %}"#" onclick="return false;"{% endif %} title="All date/times are being converted to this timezone">{% get_user_timezone request.user %}</a>

/home/nathan/rb/site/rb/templates/rb/base_root.html

SELECT COUNT(*) AS "__count"
  FROM
"lego_inventory"
 WHERE
("lego_inventory"."is_active" AND "lego_inventory"."set_id" = 95833)
SELECT ••• FROM "lego_inventory" WHERE ("lego_inventory"."is_active" AND "lego_inventory"."set_id" = 95833)
2 similar queries. Duplicated 2 times.
0.09

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in get_num_inventories(981)
  return Inventory.objects.filter(set=self).count()

16 <div class="mb-10">
17 <span>{{ moc.set_num }}</span>
18 &bull;
19 <span><a href="#parts_scroll" title="See the parts in this MOC's inventory">{{ moc.num_parts }} parts{% if moc.get_num_inventories > 1 %} <span class="label label-primary">v{{ inventory.version }}</span>{% endif %}</a></span>
20 </div>
21
22 </div>
23

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_main_top.html

SELECT "lego_mocimage"."id",
       "lego_mocimage"."moc_id",
       "lego_mocimage"."is_primary",
       "lego_mocimage"."file_extension"
  FROM
"lego_mocimage"
 WHERE
"lego_mocimage"."moc_id" = 95833
 ORDER BY
"lego_mocimage"."is_primary" DESC, "lego_mocimage"."id" ASC
SELECT ••• FROM "lego_mocimage" WHERE "lego_mocimage"."moc_id" = 95833 ORDER BY "lego_mocimage"."is_primary" DESC, "lego_mocimage"."id" ASC
2 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

25 <div class="alert alert-danger"><h4><i class="fa fa-warning"></i> This MOC is disabled.</h4></div>
26 {% endif %}
27
28 {% if moc.use_fake_image %}
29
30 {% thumbs moc.use_fake_image.img_dir settings.THUMBS_OPTIONS_MOC_TILE as thumb_img %}
31 {% thumbs_encoded moc.use_fake_image.img_dir settings.THUMBS_OPTIONS_MOC_MAIN_PREVIEW as preview_img %}
32 {% thumbs moc.use_fake_image.img_dir settings.THUMBS_OPTIONS_MOC_MAIN get_real_dims=1 as first_image %}

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_main_top.html

SELECT "lego_mocimage"."id",
       "lego_mocimage"."moc_id",
       "lego_mocimage"."is_primary",
       "lego_mocimage"."file_extension"
  FROM
"lego_mocimage"
 WHERE
"lego_mocimage"."moc_id" = 95833
 ORDER BY
"lego_mocimage"."is_primary" DESC, "lego_mocimage"."id" ASC
SELECT ••• FROM "lego_mocimage" WHERE "lego_mocimage"."moc_id" = 95833 ORDER BY "lego_mocimage"."is_primary" DESC, "lego_mocimage"."id" ASC
2 similar queries. Duplicated 2 times.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

81 {% else %}
82
83 {# only loops once, but easy way to grab it #}
84 {% for image in moc.moc_images.all %}
85 {% thumbs image.img_dir settings.THUMBS_OPTIONS_MOC_TILE as thumb_img %}
86 {% thumbs_encoded image.img_dir settings.THUMBS_OPTIONS_MOC_MAIN_PREVIEW as preview_img %}
87 {% thumbs image.img_dir settings.THUMBS_OPTIONS_MOC_MAIN get_real_dims=1 as first_image %}
88 <img class="img-responsive" style="background-image:url('data:image;base64,{{ preview_img }}');background-size:contain;background-repeat:no-repeat"

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_main_top.html

SELECT COUNT(*) AS "__count"
  FROM
"lego_inventory"
 WHERE
("lego_inventory"."is_active" AND "lego_inventory"."set_id" = 95833)
SELECT ••• FROM "lego_inventory" WHERE ("lego_inventory"."is_active" AND "lego_inventory"."set_id" = 95833)
2 similar queries. Duplicated 2 times.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in get_num_inventories(981)
  return Inventory.objects.filter(set=self).count()

16 <div class=" mb-30">
17 <span>{{ set.set_num }}</span>
18 &bull;
19 <span><a href="#parts_scroll" title="See the parts in this MOC's inventory">{{ set.num_parts }} parts{% if set.get_num_inventories > 1 %} <span class="label label-primary">v{{ inventory.version }}</span>{% endif %}</a></span>
20 &bull;
21 <span><a href="{% url 'browse_mocs' %}?theme={{ set.theme_id }}" title="Find other MOCs in this theme">{{ set.theme.get_full_name }}</a></span>
22 </div>
23 </div>

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_main_top_buy.html

SELECT "blog_article"."id",
       "blog_article"."title",
       "blog_article"."author_id",
       "blog_article"."published_date",
       "blog_article"."is_active",
       "blog_article"."body",
       "blog_article"."meta_description",
       "blog_article"."meta_img",
       "blog_article"."slug",
       "blog_article"."category_id",
       "blog_article"."ads",
       "blog_article"."show_ads_for_set_num",
       "blog_article"."review_for_set_num",
       "blog_article"."status",
       "blog_article"."scheduled_net",
       "blog_article"."ready_for_review_date",
       "blog_article"."is_sensitive",
       "blog_article"."search_vector"
  FROM
"blog_article"
 WHERE
("blog_article"."is_active" AND "blog_article"."review_for_set_num"::text LIKE '%MOC-74277%')
 ORDER BY
"blog_article"."published_date" ASC
SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."review_for_set_num"::text LIKE '%MOC-74277%') ORDER BY "blog_article"."published_date" ASC
0.28

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in get_set_review(1393)
  for review in reviews:

22 </div>
23 </div>
24
25 {% with moc.get_set_review as review %}
26 {% if review %}
27 <div class="text-center">
28 <a href="{{ review.get_absolute_url }}"><i class="fa fa-star"></i> See our Review of this MOC</a>
29 </div>

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_main_top_buy.html

SELECT 1 AS "a"
  FROM
"lego_mocswitherrors"
 WHERE
"lego_mocswitherrors"."moc_id" = 95833
 LIMIT
1
SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 95833 LIMIT 1
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./lego/models/mocs.py in is_alternate(204)
  if not self.is_pending and MocsWithErrors.objects.filter(moc=self).exists():

153
154 </div>
155 <div class="p-10"> {# aligned to bottom via flex-grow in above div #}
156 {% if moc.is_alternate and moc.parent_set_1 and not moc.parent_set_2 %}
157 <div class="display-flex">
158 <div class="flex-1">
159 <span class="label label-altbuild size-10"><i class="fa fa-fw fa-retweet text-white"></i> Alt</span>
160 This MOC can be built using only the parts from LEGO set <a href="{{ moc.parent_set_1.get_absolute_url }}#alt_builds">{{ moc.parent_set_1 }}</a> !

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_main_top_buy.html

SELECT "lego_setphoto"."id",
       "lego_setphoto"."set_id",
       "lego_setphoto"."photo_type_id",
       "lego_setphoto"."submitted_by_id",
       "lego_setphoto"."timestamp",
       "lego_setphoto"."is_active",
       "lego_setphoto"."is_primary"
  FROM
"lego_setphoto"
 WHERE
"lego_setphoto"."id" = 77677
 LIMIT
21
SELECT ••• FROM "lego_setphoto" WHERE "lego_setphoto"."id" = 77677 LIMIT 21
0.09

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in img_dir(751)
  file_dir = self.primary_photo.get_img_dir()

161 </div>
162 <div class="">
163 {% with settings.THUMBS_OPTIONS_SET_MAIN_SM as tn_options %}
164 {% thumbs moc.parent_set_1.img_dir tn_options as img %}
165 <a href="{{ moc.parent_set_1.get_absolute_url }}#alt_builds">
166 <img class="img-responsive" src="{% cachebuster img.url %}" width="{{ img.width }}" height="{{ img.height }}">
167 </a>
168 {% endwith %}

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_main_top_buy.html

SELECT "lego_baseset"."id",
       "lego_baseset"."set_num",
       "lego_baseset"."name",
       "lego_baseset"."year",
       "lego_baseset"."theme_id",
       "lego_baseset"."set_type",
       "lego_baseset"."num_parts",
       "lego_baseset"."default_inventory_id",
       "lego_baseset"."is_active",
       "lego_baseset"."is_accessory",
       "lego_baseset"."added_dt",
       "lego_baseset"."added_by_id",
       "lego_baseset"."last_modified_dt",
       "lego_baseset"."last_modified_by_id",
       "lego_baseset"."last_checked_for_bi",
       "lego_baseset"."descr",
       "lego_baseset"."primary_photo_id",
       "lego_baseset"."is_gear",
       "lego_baseset"."is_book",
       "lego_baseset"."search_vector",
       "lego_baseset"."mfhash_vector"
  FROM
"lego_baseset"
 WHERE
"lego_baseset"."id" = 80217
 LIMIT
21
SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."id" = 80217 LIMIT 21
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./lego/models/sets.py in img_dir(751)
  file_dir = self.primary_photo.get_img_dir()

/home/nathan/rb/site/./lego/models/sets.py in get_img_dir(3133)
  return os.path.join('sets', self.set.set_num.lower(), str(self.id) + '.jpg')

161 </div>
162 <div class="">
163 {% with settings.THUMBS_OPTIONS_SET_MAIN_SM as tn_options %}
164 {% thumbs moc.parent_set_1.img_dir tn_options as img %}
165 <a href="{{ moc.parent_set_1.get_absolute_url }}#alt_builds">
166 <img class="img-responsive" src="{% cachebuster img.url %}" width="{{ img.width }}" height="{{ img.height }}">
167 </a>
168 {% endwith %}

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_main_top_buy.html

SELECT COUNT(*) AS "__count"
  FROM
"lego_designerfollower"
 WHERE
"lego_designerfollower"."designer_id" = 21286
SELECT ••• FROM "lego_designerfollower" WHERE "lego_designerfollower"."designer_id" = 21286
4 similar queries. Duplicated 4 times.
5.52

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

9 <h2 class="size-30 mt-0 mb-10 text-info num-followers" title="{{ set.designer.followers.count }}">{{ set.designer.get_num_followers_formatted }}</h2>
10 </a>
11 {% else %}
12 <h2 class="size-30 mt-0 mb-10 text-info num-followers" title="{{ set.designer.followers.count }}">{{ set.designer.get_num_followers_formatted }}</h2>
13 {% endif %}
14 {% if request.user.is_authenticated %}
15 {# designer_follow_btn is a class because it can appear twice on a moc (info tab on mobile) #}
16 <div class="designer_follow_btn_{{ set.designer.id }}">

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_likes_follows.html

SELECT COUNT(*) AS "__count"
  FROM
"lego_designerfollower"
 WHERE
"lego_designerfollower"."designer_id" = 21286
SELECT ••• FROM "lego_designerfollower" WHERE "lego_designerfollower"."designer_id" = 21286
4 similar queries. Duplicated 4 times.
1.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./lego/models/designers.py in get_num_followers_formatted(231)
  i = DesignerFollower.objects.filter(designer_id=self.id).count()

9 <h2 class="size-30 mt-0 mb-10 text-info num-followers" title="{{ set.designer.followers.count }}">{{ set.designer.get_num_followers_formatted }}</h2>
10 </a>
11 {% else %}
12 <h2 class="size-30 mt-0 mb-10 text-info num-followers" title="{{ set.designer.followers.count }}">{{ set.designer.get_num_followers_formatted }}</h2>
13 {% endif %}
14 {% if request.user.is_authenticated %}
15 {# designer_follow_btn is a class because it can appear twice on a moc (info tab on mobile) #}
16 <div class="designer_follow_btn_{{ set.designer.id }}">

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_likes_follows.html

SELECT COUNT(*) AS "__count"
  FROM
"accounts_usersetphoto"
 INNER JOIN
"auth_user"
    ON
("accounts_usersetphoto"."user_id" = "auth_user"."id")
 WHERE
("accounts_usersetphoto"."is_active" AND "accounts_usersetphoto"."set_id" = 95833 AND "auth_user"."is_active")
SELECT ••• FROM "accounts_usersetphoto" INNER JOIN "auth_user" ON ("accounts_usersetphoto"."user_id" = "auth_user"."id") WHERE ("accounts_usersetphoto"."is_active" AND "accounts_usersetphoto"."set_id" = 95833 AND "auth_user"."is_active")
1.87

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

43 <li><a href="#tab_photos" data-toggle="tab">
44 <span class="hidden-xs">Photos</span>
45 <span class="visible-xs text-center"><i class="fa fa-lg fa-photo"></i></span>
46 <span class="badge badge-light hidden-xs">{{ user_set_photos.count }}</span>
47 </a></li>
48 {% if can_edit %}
49 <li><a href="#tab_admin" data-toggle="tab" class="text-red">
50 <span class="hidden-xs">Admin</span>

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_main_tabs.html

SELECT "lego_inventory"."id",
       "lego_inventory"."set_id",
       "lego_inventory"."version",
       "lego_inventory"."name",
       "lego_inventory"."is_active",
       "lego_inventory"."num_parts",
       "lego_inventory"."num_versions"
  FROM
"lego_inventory"
 WHERE
"lego_inventory"."id" = 81557
 LIMIT
21
SELECT ••• FROM "lego_inventory" WHERE "lego_inventory"."id" = 81557 LIMIT 21
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(24)
  inventory = set.get_default_inventory()

/home/nathan/rb/site/./lego/models/sets.py in get_default_inventory(971)
  if self.default_inventory is not None:

40 {% if moc.is_alternate or moc.is_mod %}
41 <div class=" row row-condensed">
42 {% if moc.parent_set_1 %}
43 <div class="{{ moc.get_parent_set_col_size }} col-condensed">{% render_set moc.parent_set_1 inventory=moc.parent_inv_1 %}</div>
44 {% endif %}
45 {% if moc.parent_set_2 %}
46 <div class="{{ moc.get_parent_set_col_size }} col-condensed">{% render_set moc.parent_set_2 inventory=moc.parent_inv_2 %}</div>
47 {% endif %}

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_main_descr.html

SELECT "lego_theme"."id",
       "lego_theme"."parent_id",
       "lego_theme"."name",
       "lego_theme"."slug",
       "lego_theme"."set_count",
       "lego_theme"."t1_id",
       "lego_theme"."t1_name",
       "lego_theme"."t2_name",
       "lego_theme"."t3_name",
       "lego_theme"."lego_blurb",
       "lego_theme"."banner_img",
       "lego_theme"."descr"
  FROM
"lego_theme"
 WHERE
"lego_theme"."id" = 672
 LIMIT
21
SELECT ••• FROM "lego_theme" WHERE "lego_theme"."id" = 672 LIMIT 21
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./lego/templatetags/sets/drawing.py in render_set(32)
  return render_to_string('sets/render_set.html',

136 <small class="trunc pull-left width-80pct" title="Filter on theme: {{ set.theme.get_full_name }}"><a href="?{% url_replace 'theme' set.theme.id %}">{{ set.theme.get_full_name }}</a></small>
137 <small class="pull-right" title="Filter on year {{ set.year }}"><a href="?{% url_replace 'min_year' set.year 'max_year' set.year %}">{{ set.year }}</a></small>
138 {% else %}
139 <small class="trunc pull-left width-80pct" title="{{ set.theme.get_full_name }}">{{ set.theme.get_full_name }}</small>
140 <small class="pull-right" title="{{ set.year }}">{{ set.year }}</small>
141 {% endif %}
142 </div>
143 {% endif %}

/home/nathan/rb/site/lego/templates/sets/render_set.html

SELECT "django_content_type"."id",
       "django_content_type"."app_label",
       "django_content_type"."model"
  FROM
"django_content_type"
 WHERE
("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'moc')
 LIMIT
21
SELECT ••• FROM "django_content_type" WHERE ("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'moc') LIMIT 21
0.09

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_page_locked_status(78)
  content_type = ContentType.objects.get(app_label=page_content_type.split('.')[0], model=page_content_type.split('.')[1])

4 {% load rb_comments_filters %}
5
6 <div id="comments-{{ page.id }}">
7 {% get_page_locked_status content_type page.id as is_page_locked %}
8
9 {% comment %}
10 Not using render_comment_list as it uses styles in ul/li that I can't seem to get working well with Smarty.
11 Using fluent-comments to hide unused fields and do ajax add/reply comment.

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT 1 AS "a"
  FROM
"rb_comments_pagelocked"
 WHERE
("rb_comments_pagelocked"."content_type_id" = 31 AND "rb_comments_pagelocked"."object_id" = 95833)
 LIMIT
1
SELECT ••• FROM "rb_comments_pagelocked" WHERE ("rb_comments_pagelocked"."content_type_id" = 31 AND "rb_comments_pagelocked"."object_id" = 95833) LIMIT 1
0.07

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_page_locked_status(79)
  is_locked = PageLocked.objects.filter(content_type=content_type, object_id=page_id).exists()

4 {% load rb_comments_filters %}
5
6 <div id="comments-{{ page.id }}">
7 {% get_page_locked_status content_type page.id as is_page_locked %}
8
9 {% comment %}
10 Not using render_comment_list as it uses styles in ul/li that I can't seem to get working well with Smarty.
11 Using fluent-comments to hide unused fields and do ajax add/reply comment.

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT (SUBSTRING(tree_path, 1, 10)) AS "tree_path_root",
       "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity",
       "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "accounts_userplan"."user_id",
       "accounts_userplan"."plan_id",
       "accounts_userplan"."expiry_date",
       "accounts_userplan"."last_paid_date",
       "accounts_userplan"."is_subscription_active",
       "accounts_userplan"."subscription_period",
       "accounts_userplan"."payment_source",
       "accounts_userplan"."stripe_customer_id",
       "accounts_userplan"."stripe_subscription_id",
       "accounts_userplan"."paypal_subscription_id",
       "accounts_userplan"."base_free_plan_id",
       "accounts_userplan"."is_reminder_sent",
       "plans_plan"."id",
       "plans_plan"."type",
       "plans_plan"."version",
       "plans_plan"."stripe_id",
       "plans_plan"."paypal_id",
       "plans_plan"."cost_single",
       "plans_plan"."cost_monthly",
       "plans_plan"."cost_yearly",
       "accounts_userprofile"."user_id",
       "accounts_userprofile"."last_mod_inv",
       "accounts_userprofile"."last_activity",
       "accounts_userprofile"."last_ip",
       "accounts_userprofile"."last_country_id",
       "accounts_userprofile"."last_agent",
       "accounts_userprofile"."is_email_verified",
       "accounts_userprofile"."is_email_idle",
       "accounts_userprofile"."email_last_clicked",
       "accounts_userprofile"."api_token",
       "accounts_userprofile"."real_name",
       "accounts_userprofile"."location",
       "accounts_userprofile"."brickset_url",
       "accounts_userprofile"."mocpages_url",
       "accounts_userprofile"."flickr_url",
       "accounts_userprofile"."eurobricks_url",
       "accounts_userprofile"."youtube_url",
       "accounts_userprofile"."bricklink_url",
       "accounts_userprofile"."brickowl_url",
       "accounts_userprofile"."bricksafe_url",
       "accounts_userprofile"."website_url",
       "accounts_userprofile"."facebook_url",
       "accounts_userprofile"."twitter_url",
       "accounts_userprofile"."karma",
       "accounts_userprofile"."trophy_badge_id",
       "accounts_userprofile"."comments",
       "accounts_userprofile"."mfhash_vector",
       "accounts_userprofile"."is_muted",
       "accounts_userprofile"."is_banned",
       "accounts_userprofile"."is_suspected_pirate",
       "accounts_userprofile"."muted_until",
       "accounts_userprofile"."blocked_operations",
       "accounts_userprofile"."is_guest",
       "accounts_userprofile"."guest_token"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
  LEFT OUTER JOIN
"auth_user"
    ON
("django_comments"."user_id" = "auth_user"."id")
  LEFT OUTER JOIN
"accounts_userplan"
    ON
("auth_user"."id" = "accounts_userplan"."user_id")
  LEFT OUTER JOIN
"plans_plan"
    ON
("accounts_userplan"."plan_id" = "plans_plan"."id")
  LEFT OUTER JOIN
"accounts_userprofile"
    ON
("auth_user"."id" = "accounts_userprofile"."user_id")
 WHERE
("django_comments"."content_type_id" = 31 AND "django_comments"."object_pk" = '95833' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
 ORDER BY
1 DESC, "threadedcomments_comment"."tree_path" ASC
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") LEFT OUTER JOIN "auth_user" ON ("django_comments"."user_id" = "auth_user"."id") LEFT OUTER JOIN "accounts_userplan" ON ("auth_user"."id" = "accounts_userplan"."user_id") LEFT OUTER JOIN "plans_plan" ON ("accounts_userplan"."plan_id" = "plans_plan"."id") LEFT OUTER JOIN "accounts_userprofile" ON ("auth_user"."id" = "accounts_userprofile"."user_id") WHERE ("django_comments"."content_type_id" = 31 AND "django_comments"."object_pk" = '95833' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed") ORDER BY 1 DESC, "threadedcomments_comment"."tree_path" ASC
3.40

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/venv_rb310/lib/python3.10/site-packages/django_comments/templatetags/comments.py in render(71)
  qs = self.get_queryset(context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_queryset(45)
  return qs[:50], len(qs)

14 {% endcomment %}
15 {% if not comment_list %}
16 {# Get comments for a page #}
17 {% get_rb_comment_list for page as comment_list %}
18 {% get_comment_count for page as num_comments %}
19
20 {% if show_comment_count %}
21 <div class="clearfix">

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT ("auth_user_groups"."user_id") AS "_prefetch_related_val_user_id",
       "auth_group"."id",
       "auth_group"."name"
  FROM
"auth_group"
 INNER JOIN
"auth_user_groups"
    ON
("auth_group"."id" = "auth_user_groups"."group_id")
 WHERE
"auth_user_groups"."user_id" IN (1890611, 537953, 1050380, 837670, 920628, 814993, 825842, 718312, 602918, 483780, 617718, 528303, 636137, 248264, 376945, 21286, 203367, 296747, 502542, 2619, 475572, 42294, 548022, 535844, 86749, 151710, 18796, 427910, 325701, 228386, 915, 102913, 29261, 103514, 312876)
SELECT ••• FROM "auth_group" INNER JOIN "auth_user_groups" ON ("auth_group"."id" = "auth_user_groups"."group_id") WHERE "auth_user_groups"."user_id" IN (1890611, 537953, 1050380, 837670, 920628, 814993, 825842, 718312, 602918, 483780, 617718, 528303, 636137, 248264, 376945, 21286, 203367, 296747, 502542, 2619, 475572, 42294, 548022, 535844, 86749, 151710, 18796, 427910, 325701, 228386, 915, 102913, 29261, 103514, 312876)
2 similar queries. Duplicated 2 times.
0.23

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/venv_rb310/lib/python3.10/site-packages/django_comments/templatetags/comments.py in render(71)
  qs = self.get_queryset(context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_queryset(45)
  return qs[:50], len(qs)

14 {% endcomment %}
15 {% if not comment_list %}
16 {# Get comments for a page #}
17 {% get_rb_comment_list for page as comment_list %}
18 {% get_comment_count for page as num_comments %}
19
20 {% if show_comment_count %}
21 <div class="clearfix">

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT COUNT(*) AS "__count"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
("django_comments"."content_type_id" = 31 AND "django_comments"."object_pk" = '95833' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE ("django_comments"."content_type_id" = 31 AND "django_comments"."object_pk" = '95833' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
0.21

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/venv_rb310/lib/python3.10/site-packages/django_comments/templatetags/comments.py in render(72)
  context[self.as_varname] = self.get_context_value_from_queryset(context, qs)

/home/nathan/venv_rb310/lib/python3.10/site-packages/threadedcomments/templatetags/threadedcomments_tags.py in get_context_value_from_queryset(116)
  return qs.count()

15 {% if not comment_list %}
16 {# Get comments for a page #}
17 {% get_rb_comment_list for page as comment_list %}
18 {% get_comment_count for page as num_comments %}
19
20 {% if show_comment_count %}
21 <div class="clearfix">
22 <div class="heading-title heading-border-bottom heading-color">

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT (SUBSTRING(tree_path, 1, 10)) AS "tree_path_root",
       "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity",
       "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "accounts_userplan"."user_id",
       "accounts_userplan"."plan_id",
       "accounts_userplan"."expiry_date",
       "accounts_userplan"."last_paid_date",
       "accounts_userplan"."is_subscription_active",
       "accounts_userplan"."subscription_period",
       "accounts_userplan"."payment_source",
       "accounts_userplan"."stripe_customer_id",
       "accounts_userplan"."stripe_subscription_id",
       "accounts_userplan"."paypal_subscription_id",
       "accounts_userplan"."base_free_plan_id",
       "accounts_userplan"."is_reminder_sent",
       "plans_plan"."id",
       "plans_plan"."type",
       "plans_plan"."version",
       "plans_plan"."stripe_id",
       "plans_plan"."paypal_id",
       "plans_plan"."cost_single",
       "plans_plan"."cost_monthly",
       "plans_plan"."cost_yearly",
       "accounts_userprofile"."user_id",
       "accounts_userprofile"."last_mod_inv",
       "accounts_userprofile"."last_activity",
       "accounts_userprofile"."last_ip",
       "accounts_userprofile"."last_country_id",
       "accounts_userprofile"."last_agent",
       "accounts_userprofile"."is_email_verified",
       "accounts_userprofile"."is_email_idle",
       "accounts_userprofile"."email_last_clicked",
       "accounts_userprofile"."api_token",
       "accounts_userprofile"."real_name",
       "accounts_userprofile"."location",
       "accounts_userprofile"."brickset_url",
       "accounts_userprofile"."mocpages_url",
       "accounts_userprofile"."flickr_url",
       "accounts_userprofile"."eurobricks_url",
       "accounts_userprofile"."youtube_url",
       "accounts_userprofile"."bricklink_url",
       "accounts_userprofile"."brickowl_url",
       "accounts_userprofile"."bricksafe_url",
       "accounts_userprofile"."website_url",
       "accounts_userprofile"."facebook_url",
       "accounts_userprofile"."twitter_url",
       "accounts_userprofile"."karma",
       "accounts_userprofile"."trophy_badge_id",
       "accounts_userprofile"."comments",
       "accounts_userprofile"."mfhash_vector",
       "accounts_userprofile"."is_muted",
       "accounts_userprofile"."is_banned",
       "accounts_userprofile"."is_suspected_pirate",
       "accounts_userprofile"."muted_until",
       "accounts_userprofile"."blocked_operations",
       "accounts_userprofile"."is_guest",
       "accounts_userprofile"."guest_token"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
  LEFT OUTER JOIN
"auth_user"
    ON
("django_comments"."user_id" = "auth_user"."id")
  LEFT OUTER JOIN
"accounts_userplan"
    ON
("auth_user"."id" = "accounts_userplan"."user_id")
  LEFT OUTER JOIN
"plans_plan"
    ON
("accounts_userplan"."plan_id" = "plans_plan"."id")
  LEFT OUTER JOIN
"accounts_userprofile"
    ON
("auth_user"."id" = "accounts_userprofile"."user_id")
 WHERE
("django_comments"."content_type_id" = 31 AND "django_comments"."object_pk" = '95833' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed")
 ORDER BY
1 DESC, "threadedcomments_comment"."tree_path" ASC
 LIMIT
50
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") LEFT OUTER JOIN "auth_user" ON ("django_comments"."user_id" = "auth_user"."id") LEFT OUTER JOIN "accounts_userplan" ON ("auth_user"."id" = "accounts_userplan"."user_id") LEFT OUTER JOIN "plans_plan" ON ("accounts_userplan"."plan_id" = "plans_plan"."id") LEFT OUTER JOIN "accounts_userprofile" ON ("auth_user"."id" = "accounts_userprofile"."user_id") WHERE ("django_comments"."content_type_id" = 31 AND "django_comments"."object_pk" = '95833' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" AND NOT "django_comments"."is_removed") ORDER BY 1 DESC, "threadedcomments_comment"."tree_path" ASC LIMIT 50
1.56

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

89 {% with cache_timeout=user.is_authenticated|yesno:"0,300" %}
90 {% cache cache_timeout 'comments_list_v2' request.user.is_authenticated page.id request.GET.page request.GET.showmore num_comments %}
91
92 <div class="comments {% if not comment_list.0 %} empty{% endif %} mb-30">
93 {% if use_context %}
94 {# Flat list of comments #}
95 {% for comment in comment_list.0|make_proxy_users %}
96 <ul class="comment list-unstyled comment-list-wrapper">

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT ("auth_user_groups"."user_id") AS "_prefetch_related_val_user_id",
       "auth_group"."id",
       "auth_group"."name"
  FROM
"auth_group"
 INNER JOIN
"auth_user_groups"
    ON
("auth_group"."id" = "auth_user_groups"."group_id")
 WHERE
"auth_user_groups"."user_id" IN (1890611, 537953, 1050380, 837670, 920628, 814993, 825842, 718312, 602918, 483780, 617718, 528303, 636137, 248264, 376945, 21286, 203367, 296747, 502542, 2619, 475572, 42294, 548022, 535844, 86749, 151710, 18796, 427910, 325701, 228386, 915, 102913, 29261, 103514, 312876)
SELECT ••• FROM "auth_group" INNER JOIN "auth_user_groups" ON ("auth_group"."id" = "auth_user_groups"."group_id") WHERE "auth_user_groups"."user_id" IN (1890611, 537953, 1050380, 837670, 920628, 814993, 825842, 718312, 602918, 483780, 617718, 528303, 636137, 248264, 376945, 21286, 203367, 296747, 502542, 2619, 475572, 42294, 548022, 535844, 86749, 151710, 18796, 427910, 325701, 228386, 915, 102913, 29261, 103514, 312876)
2 similar queries. Duplicated 2 times.
0.21

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

89 {% with cache_timeout=user.is_authenticated|yesno:"0,300" %}
90 {% cache cache_timeout 'comments_list_v2' request.user.is_authenticated page.id request.GET.page request.GET.showmore num_comments %}
91
92 <div class="comments {% if not comment_list.0 %} empty{% endif %} mb-30">
93 {% if use_context %}
94 {# Flat list of comments #}
95 {% for comment in comment_list.0|make_proxy_users %}
96 <ul class="comment list-unstyled comment-list-wrapper">

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 1890611
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 1890611 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 1890611
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 1890611 LIMIT 21
35 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 1890611)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 1890611) LIMIT 1
56 similar queries. Duplicated 2 times.
0.19

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 1890611)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 1890611) LIMIT 1
56 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 1890611)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 1890611) LIMIT 1
50 similar queries.
0.28

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 537953
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 537953 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 537953
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 537953 LIMIT 21
35 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 537953)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 537953) LIMIT 1
56 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 537953)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 537953) LIMIT 1
56 similar queries. Duplicated 2 times.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 537953)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 537953) LIMIT 1
50 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 1050380
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 1050380 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 1050380
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 1050380 LIMIT 21
35 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 1050380)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 1050380) LIMIT 1
56 similar queries. Duplicated 2 times.
0.45

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 1050380)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 1050380) LIMIT 1
56 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 1050380)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 1050380) LIMIT 1
50 similar queries.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 837670
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 837670 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 837670
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 837670 LIMIT 21
35 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 837670)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 837670) LIMIT 1
56 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 837670)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 837670) LIMIT 1
56 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 837670)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 837670) LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 920628
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 920628 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 920628
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 920628 LIMIT 21
35 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 920628)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 920628) LIMIT 1
56 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 920628)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 920628) LIMIT 1
56 similar queries. Duplicated 2 times.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 920628)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 920628) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 814993
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 814993 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 814993
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 814993 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 814993)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 814993) LIMIT 1
56 similar queries. Duplicated 2 times.
0.18

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 814993)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 814993) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 814993)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 814993) LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 825842
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 825842 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 825842
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 825842 LIMIT 21
35 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 825842)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 825842) LIMIT 1
50 similar queries.
0.21

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 718312
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 718312 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 718312
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 718312 LIMIT 21
35 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 718312)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 718312) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 602918
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 602918 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 602918
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 602918 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 602918)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 602918) LIMIT 1
50 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 483780
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 483780 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 2 times.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 483780
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 483780 LIMIT 21
35 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 483780)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 483780) LIMIT 1
56 similar queries. Duplicated 4 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 483780)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 483780) LIMIT 1
56 similar queries. Duplicated 4 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 483780)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 483780) LIMIT 21
22 similar queries. Duplicated 2 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 483780)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 483780) LIMIT 1
50 similar queries. Duplicated 2 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 617718
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 617718 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 617718
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 617718 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 617718)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 617718) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 617718)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 617718) LIMIT 1
56 similar queries. Duplicated 2 times.
0.15

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 617718)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 617718) LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 528303
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 528303 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 528303
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 528303 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 528303)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 528303) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 528303)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 528303) LIMIT 1
56 similar queries. Duplicated 2 times.
0.18

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 528303)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 528303) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 636137
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 636137 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 2 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 636137
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 636137 LIMIT 21
35 similar queries. Duplicated 2 times.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 636137)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 636137) LIMIT 1
50 similar queries. Duplicated 2 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 263753
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 263753 LIMIT 21
16 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 248264
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 248264 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 248264
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 248264 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 248264)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 248264) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 248264)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 248264) LIMIT 1
56 similar queries. Duplicated 2 times.
0.15

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 248264)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 248264) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 263761
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 263761 LIMIT 21
16 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 636137
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 636137 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 2 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 636137
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 636137 LIMIT 21
35 similar queries. Duplicated 2 times.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 636137)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 636137) LIMIT 1
50 similar queries. Duplicated 2 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 376945
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 376945 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 376945
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 376945 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 376945)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 376945) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 376945)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 376945) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 376945)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 376945) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 212853
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 212853 LIMIT 21
16 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 483780
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 483780 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 2 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 483780
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 483780 LIMIT 21
35 similar queries. Duplicated 2 times.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 483780)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 483780) LIMIT 1
56 similar queries. Duplicated 4 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 483780)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 483780) LIMIT 1
56 similar queries. Duplicated 4 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 483780)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 483780) LIMIT 21
22 similar queries. Duplicated 2 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 483780)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 483780) LIMIT 1
50 similar queries. Duplicated 2 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 203367
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 203367 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 203367
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 203367 LIMIT 21
35 similar queries.
0.15

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 203367)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 203367) LIMIT 1
56 similar queries. Duplicated 2 times.
0.20

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 203367)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 203367) LIMIT 1
56 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 203367)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 203367) LIMIT 21
22 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 203367)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 203367) LIMIT 1
50 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 203924
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 203924 LIMIT 21
16 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.07

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 296747
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 296747 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.07

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 296747
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 296747 LIMIT 21
35 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 296747)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 296747) LIMIT 1
56 similar queries. Duplicated 2 times.
0.15

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 296747)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 296747) LIMIT 1
56 similar queries. Duplicated 2 times.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 296747)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 296747) LIMIT 1
50 similar queries.
0.09

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 202724
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 202724 LIMIT 21
16 similar queries.
0.18

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 502542
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 502542 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.08

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 502542)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 502542) LIMIT 21
22 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 502542)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 502542) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 201583
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 201583 LIMIT 21
16 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 2619
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 2619 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 2619
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 2619 LIMIT 21
35 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 2619)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 2619) LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 195647
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 195647 LIMIT 21
16 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 195656
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 195656 LIMIT 21
16 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 475572
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 475572 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 2 times.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 475572
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 475572 LIMIT 21
35 similar queries. Duplicated 2 times.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 475572)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 475572) LIMIT 1
56 similar queries. Duplicated 4 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 475572)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 475572) LIMIT 1
56 similar queries. Duplicated 4 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 475572)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 475572) LIMIT 1
50 similar queries. Duplicated 2 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 42294
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 42294 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 42294
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 42294 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 42294)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 42294) LIMIT 1
56 similar queries. Duplicated 2 times.
0.18

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 42294)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 42294) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 42294)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 42294) LIMIT 1
50 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 548022
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 548022 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 548022
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 548022 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 548022)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 548022) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 548022)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 548022) LIMIT 1
56 similar queries. Duplicated 2 times.
0.15

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 548022)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 548022) LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 193433
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 193433 LIMIT 21
16 similar queries.
0.20

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 535844
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 535844 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 535844
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 535844 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 535844)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 535844) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 535844)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 535844) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 535844)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 535844) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 86749
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 86749 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 86749
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 86749 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 86749)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 86749) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 86749)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 86749) LIMIT 1
56 similar queries. Duplicated 2 times.
0.15

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 86749)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 86749) LIMIT 21
22 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 86749)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 86749) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 192393
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 192393 LIMIT 21
16 similar queries.
0.21

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.09

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 151710
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 151710 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 151710
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 151710 LIMIT 21
35 similar queries.
0.12

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 151710)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 151710) LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 189885
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 189885 LIMIT 21
16 similar queries.
0.22

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 18796
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 18796 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 18796
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 18796 LIMIT 21
35 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 18796)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 18796) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 18796)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 18796) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 18796)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 18796) LIMIT 1
50 similar queries.
0.20

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 427910
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 427910 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 427910
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 427910 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 427910)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 427910) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 427910)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 427910) LIMIT 1
56 similar queries. Duplicated 2 times.
0.18

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 427910)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 427910) LIMIT 21
22 similar queries.
0.29

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 427910)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 427910) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 325701
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 325701 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 325701
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 325701 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 325701)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 325701) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 325701)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 325701) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 325701)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 325701) LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 228386
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 228386 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 228386
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 228386 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 228386)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 228386) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 228386)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 228386) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 228386)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 228386) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 915
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 915 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 915
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 915 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 915)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 915) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 915)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 915) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 915)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 915) LIMIT 21
22 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 915)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 915) LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 188829
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 188829 LIMIT 21
16 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 102913
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 102913 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 102913)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 102913) LIMIT 21
22 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 102913)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 102913) LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 188804
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 188804 LIMIT 21
16 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 475572
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 475572 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 2 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 475572
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 475572 LIMIT 21
35 similar queries. Duplicated 2 times.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 475572)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 475572) LIMIT 1
56 similar queries. Duplicated 4 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 475572)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 475572) LIMIT 1
56 similar queries. Duplicated 4 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 475572)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 475572) LIMIT 1
50 similar queries. Duplicated 2 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 188800
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 188800 LIMIT 21
16 similar queries.
0.21

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 29261
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 29261 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 29261
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 29261 LIMIT 21
35 similar queries.
0.14

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 29261)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 29261) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 29261)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 29261) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 29261)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 29261) LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 103514
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 103514 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 103514
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 103514 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 103514)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 103514) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 103514)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 103514) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 103514)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 103514) LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 188591
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 188591 LIMIT 21
16 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 312876
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 312876 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined",
       "lego_designer"."user_ptr_id",
       "lego_designer"."auto_approve",
       "lego_designer"."num_auto_approved",
       "lego_designer"."last_checked_for_moc_errors"
  FROM
"lego_designer"
 INNER JOIN
"auth_user"
    ON
("lego_designer"."user_ptr_id" = "auth_user"."id")
 WHERE
"lego_designer"."user_ptr_id" = 312876
 LIMIT
21
SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 312876 LIMIT 21
35 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 312876)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 312876) LIMIT 1
56 similar queries. Duplicated 2 times.
0.17

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"lego_moc"
 INNER JOIN
"lego_baseset"
    ON
("lego_moc"."baseset_ptr_id" = "lego_baseset"."id")
 WHERE
("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 312876)
 LIMIT
1
SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 312876) LIMIT 1
56 similar queries. Duplicated 2 times.
0.16

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
  elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():

57 {% elif page.is_moc and page.designer_id == comment.user_id %}
58 <span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
59 {% else %}
60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 312876)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 312876) LIMIT 21
22 similar queries.
0.11

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 312876)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 312876) LIMIT 1
50 similar queries.
0.19

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "django_comments"."id",
       "django_comments"."content_type_id",
       "django_comments"."object_pk",
       "django_comments"."site_id",
       "django_comments"."user_id",
       "django_comments"."user_name",
       "django_comments"."user_email",
       "django_comments"."user_url",
       "django_comments"."comment",
       "django_comments"."submit_date",
       "django_comments"."ip_address",
       "django_comments"."is_public",
       "django_comments"."is_removed",
       "threadedcomments_comment"."comment_ptr_id",
       "threadedcomments_comment"."title",
       "threadedcomments_comment"."parent_id",
       "threadedcomments_comment"."last_child_id",
       "threadedcomments_comment"."tree_path",
       "threadedcomments_comment"."newest_activity"
  FROM
"threadedcomments_comment"
 INNER JOIN
"django_comments"
    ON
("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id")
 WHERE
"threadedcomments_comment"."comment_ptr_id" = 188558
 LIMIT
21
SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE "threadedcomments_comment"."comment_ptr_id" = 188558 LIMIT 21
16 similar queries.
0.13

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

105 {% if not comment.open and not comment.close %}</li>{% endif %}
106 {% if comment.open %}
107 <ul class="comment list-unstyled comment-list-wrapper">{% endif %}
108 <li class="comment {% if comment.parent and comment.depth < 7 %}comment-reply{% endif %} comment-wrapper">
109 {% include "comments/comment.html" %}
110 {% for close in comment.close %}
111 </li>
112 </ul>

/home/nathan/rb/site/rb_comments/templates/comments/render_comment_list.html

SELECT "avatar_avatar"."id",
       "avatar_avatar"."user_id",
       "avatar_avatar"."primary",
       "avatar_avatar"."avatar",
       "avatar_avatar"."date_uploaded"
  FROM
"avatar_avatar"
 WHERE
"avatar_avatar"."user_id" = 21286
 ORDER BY
"avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC
 LIMIT
1
SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 21286 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
  avatar_url = provider.get_avatar_url(user, size)

/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
  avatar = get_primary_avatar(user, size)

/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
  avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]

36 {% if is_blocked %}
37 <img data-src="{% static settings.AVATAR_DEFAULT_URL %}" class="comment-avatar" width="75px" height="75px">
38 {% else %}
39 <img data-src="{% avatar_url comment.user 75 %}" class="comment-avatar" width="75px" height="75px" alt="Avatar image for Rebrickable user {{ comment.user }}">
40 {% endif %}
41 {# collapse/expand child comments #}
42 <div class="text-center pointer pt-10 js-collapse-comments" data-comment-id="{{ comment.id }}">
43 <i class="fa fa-minus-square-o fa-lg"></i>

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT "accounts_usersetting"."id",
       "accounts_usersetting"."user_id",
       "accounts_usersetting"."name",
       "accounts_usersetting"."value"
  FROM
"accounts_usersetting"
 WHERE
("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286)
 LIMIT
21
SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 21286) LIMIT 21
22 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
  return self.get_privacy_option('is_public_plan')

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
  options = self.get_privacy_options()

/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
  options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)

60 <span class="label label-info" title="{{ comment.user.get_rolename.1 }}">{{ comment.user.get_rolename.0 }}</span>
61 {% endif %}
62 {% if not comment.user.plan.is_free %}
63 {% if comment.user.is_public_plan %}
64 {{ comment.user.get_plan_html }}
65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT 1 AS "a"
  FROM
"accounts_mocpurchase"
 WHERE
("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286)
 LIMIT
1
SELECT ••• FROM "accounts_mocpurchase" WHERE ("accounts_mocpurchase"."is_active" AND "accounts_mocpurchase"."moc_id" = 95833 AND "accounts_mocpurchase"."user_id" = 21286) LIMIT 1
50 similar queries. Duplicated 13 times.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_verified_purchase(97)
  if user.has_purchased_moc(moc.id):

/home/nathan/rb/site/./accounts/models/user_extras.py in has_purchased_moc(1008)
  return MocPurchase.objects.filter(user=self, moc_id=moc_id).exists()

65 {% endif %}
66 {% endif %}
67 {% if page.is_moc %}
68 {% get_verified_purchase comment.user page %}
69 {% endif %}
70 {% endif %}
71 </div>
72

/home/nathan/rb/site/rb_comments/templates/comments/comment.html

SELECT COUNT(*) AS "__count"
  FROM
"lego_designerfollower"
 WHERE
"lego_designerfollower"."designer_id" = 21286
SELECT ••• FROM "lego_designerfollower" WHERE "lego_designerfollower"."designer_id" = 21286
4 similar queries. Duplicated 4 times.
1.43

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

9 <h2 class="size-30 mt-0 mb-10 text-info num-followers" title="{{ set.designer.followers.count }}">{{ set.designer.get_num_followers_formatted }}</h2>
10 </a>
11 {% else %}
12 <h2 class="size-30 mt-0 mb-10 text-info num-followers" title="{{ set.designer.followers.count }}">{{ set.designer.get_num_followers_formatted }}</h2>
13 {% endif %}
14 {% if request.user.is_authenticated %}
15 {# designer_follow_btn is a class because it can appear twice on a moc (info tab on mobile) #}
16 <div class="designer_follow_btn_{{ set.designer.id }}">

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_likes_follows.html

SELECT COUNT(*) AS "__count"
  FROM
"lego_designerfollower"
 WHERE
"lego_designerfollower"."designer_id" = 21286
SELECT ••• FROM "lego_designerfollower" WHERE "lego_designerfollower"."designer_id" = 21286
4 similar queries. Duplicated 4 times.
0.83

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

/home/nathan/rb/site/./lego/models/designers.py in get_num_followers_formatted(231)
  i = DesignerFollower.objects.filter(designer_id=self.id).count()

9 <h2 class="size-30 mt-0 mb-10 text-info num-followers" title="{{ set.designer.followers.count }}">{{ set.designer.get_num_followers_formatted }}</h2>
10 </a>
11 {% else %}
12 <h2 class="size-30 mt-0 mb-10 text-info num-followers" title="{{ set.designer.followers.count }}">{{ set.designer.get_num_followers_formatted }}</h2>
13 {% endif %}
14 {% if request.user.is_authenticated %}
15 {# designer_follow_btn is a class because it can appear twice on a moc (info tab on mobile) #}
16 <div class="designer_follow_btn_{{ set.designer.id }}">

/home/nathan/rb/site/lego/templates/mocs/includes/render_moc_likes_follows.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined"
  FROM
"auth_user"
 WHERE
"auth_user"."id" = 21286
 LIMIT
21
SELECT ••• FROM "auth_user" WHERE "auth_user"."id" = 21286 LIMIT 21
2 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

5 {% cache cache_timeout 'change_summary' user.is_authenticated set.id 'v3' %}
6 <div><small><i class="fa fa-fw fa-eye" title="Views"></i> {{ set.stats.hits|default:0|floor_100|intcomma }}</small></div>
7 <div><small><i class="fa fa-fw fa-plus" title="Added"></i> {{ changes.added.timestamp }}
8 {% if changes.added.user %}by
9 <a href="{% url 'user_profile' changes.added.user.get_username %}">{{ changes.added.user.get_username }}</a>
10 {% endif %}</small></div>
11 <div><small><i class="fa fa-fw fa-edit" title="Updated"></i> {{ changes.updated.timestamp }}
12 {% if changes.updated.user %}by

/home/nathan/rb/site/lego/templates/sets/includes/render_change_summary.html

SELECT "auth_user"."id",
       "auth_user"."password",
       "auth_user"."last_login",
       "auth_user"."is_superuser",
       "auth_user"."username",
       "auth_user"."first_name",
       "auth_user"."last_name",
       "auth_user"."email",
       "auth_user"."is_staff",
       "auth_user"."is_active",
       "auth_user"."date_joined"
  FROM
"auth_user"
 WHERE
"auth_user"."id" = 15506
 LIMIT
21
SELECT ••• FROM "auth_user" WHERE "auth_user"."id" = 15506 LIMIT 21
2 similar queries.
0.10

Connection: default

Transaction status: Idle

/home/nathan/venv_rb310/lib/python3.10/site-packages/ratelimit/decorators.py in _wrapped(30)
  return fn(*args, **kw)

/home/nathan/rb/site/./lego/views/mocs.py in moc_details(690)
  return render(request, 'mocs/moc_details.html', context)

9 <a href="{% url 'user_profile' changes.added.user.get_username %}">{{ changes.added.user.get_username }}</a>
10 {% endif %}</small></div>
11 <div><small><i class="fa fa-fw fa-edit" title="Updated"></i> {{ changes.updated.timestamp }}
12 {% if changes.updated.user %}by
13 <a href="{% url 'user_profile' changes.updated.user.get_username %}">{{ changes.updated.user.get_username }}</a>
14 {% endif %}</small></div>
15 <div class="mb-10"><small><a href="{% url 'change_log' %}?search_id={{ set.set_num }}">See Change Log for {{ set.set_num }}</a></small></div>
16 {% if user.is_authenticated %}

/home/nathan/rb/site/lego/templates/sets/includes/render_change_summary.html

Log messages

No messages logged.