Jump to content

teraßyte

Clients
  • Posts

    33,811
  • Joined

  • Last visited

  • Days Won

    55

 Content Type 

Downloads

Release Notes

IPS4 Guides

IPS4 Developer Documentation

Invision Community Blog

Development Blog

Deprecation Tracker

Providers Directory

Projects

Release Notes v5

Invision Community 5 Bug Tracker

Forums

Events

Store

Gallery

Everything posted by teraßyte

  1. What you're saying makes sense but the software doesn't support such functionality. You can either: Make a plugin/application for it yourself. Post in this forum if someone is willing to take the request (either free or paid). Directly hire a 3rd party developer to make it for you. A list of available people can be found in the Providers page: https://invisioncommunity.com/third-party/providers/. If you're interested I'm on that list too. 😉
  2. Unless I remember wrong, tasks for disabled applications are not(?) run. Just like how disabling an application will disable its hooks/extensions too. If you plan to disable the application then you don't need to disable the tasks manually.
  3. Are these bots using the same IP or a range of them? If they're using the same IP/range for example you could add a check on that. Not sure how much that would be effective though. A good idea might also be to not return an error if the bot is detected, just make it look like the vote has been submitted properly but simply don't actually count it. If you return an error they'll look into it and update/fix the bot to bypass it, but if you make it look like all's ok they won't have anything to look at.
  4. In case your reply to Marc's question is YES you might want to consider using this plugin instead:
  5. Did you change anything else on the server before the PHP version change? Did something else update automatically maybe?
  6. IPS can't help with 3rd party applications issues, and without knowing the application code or why it errors there really isn't much that can be done like this. Since you can't get in contact with the developer, your best next option would be to hire someone from the providers list to investigate and fix the issue for you: https://invisioncommunity.com/third-party/providers/ I'm on that list too (link also in my signature) if you're interested. 🙂
  7. This is the support topic for this plugin:
  8. This is the support topic for this plugin:
  9. Yeah, I was thinking I'd add a member setting to let everyone choose rather than excluding specific themes. Otherwise you'd have to duplicate all the installed themes. 😅
  10. I actually just submitted a quick plugin to disable the topic preview. It's pending approval here in the IPS Marketplace and already available on my site: The plugin has only a setting to exclude certain forums, not themes though. Maybe I'll consider it for a future version.
  11. No, there's no specific setting to disable it. You can either edit it out of the template or have a plugin made to disable it. Going the plugin way will keep your templates unedited and any future updates to it will automatically apply, which is what I usually suggest. If you want to edit the template thought just find this code in "forums > front > forums > topicRow" (line ~113): <a href='{$row->url( "getPrefComment" )}' class='' title='{{if $row->mapped('title')}}{$row->mapped('title')}{{else}}{lang="content_deleted"}{{endif}} {{if $row->canEdit()}}{lang="click_hold_edit"}{{endif}}' {{if $row->tableHoverUrl and $row->canView()}} data-ipsHover data-ipsHover-target='{$row->url()->setQueryString('preview', 1)}' data-ipsHover-timeout='1.5'{{endif}}{{if $row->canEdit()}} data-role="editableTitle"{{endif}}> and replace it with (basically remove the data-ipsHover attributes): <a href='{$row->url( "getPrefComment" )}' class='' title='{{if $row->mapped('title')}}{$row->mapped('title')}{{else}}{lang="content_deleted"}{{endif}} {{if $row->canEdit()}}{lang="click_hold_edit"}{{endif}}' {{if $row->canEdit()}} data-role="editableTitle"{{endif}}>
  12. While it's not a choice when you initially paste the link, the editor does ask you if you want to keep it as a link after the embed process is actually done. 🙄
  13. New 1.0.2 version just submitted (pending IPS approval). Here's the changelog:
  14. When enabling the Post Approval option for normal topics a Post Approval Enabled warning badge icon is shown while viewing a forum or the topic itself. If the same option is enabled in a questions forums however the icon is shown only while viewing the question itself but not in forum view. Both questionRow and popularQuestionRow templates need an update.
  15. Do you have the Radical Tags application installed perhaps?
  16. It all started with this plugin: After seeing it I was asked if I could do the same for the solved/poll/pinned/featured icons but there's no reliable way to target only those icons (not that I can see at least) with a theme hook: {{if $row->isSolved()}} <span><span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="this_is_solved"}'><i class='fa fa-check'></i></span></span> {{endif}} {{if $row->mapped('poll')}} <span><span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_neutral" data-ipsTooltip title='{lang="topic_has_poll"}'><i class='fa fa-question'></i></span></span> {{endif}} {{if $row->mapped('pinned') || $row->mapped('featured') || $row->hidden() === -1 || $row->hidden() === 1}} {{if $row->hidden() === -1}} <span><span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{$row->hiddenBlurb()}'><i class='fa fa-eye-slash'></i></span></span> {{elseif $row->hidden() === 1}} <span><span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{lang="pending_approval"}'><i class='fa fa-warning'></i></span></span> {{elseif $row->canToggleItemModeration() and $row->itemModerationEnabled()}} <span><span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{lang="topic_moderation_enabled"}'><i class='fa fa-user-times'></i></span></span> {{endif}} {{if $row->mapped('pinned')}} <span><span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="pinned"}'><i class='fa fa-thumb-tack'></i></span></span> {{endif}} {{if $row->mapped('featured')}} <span><span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="featured"}'><i class='fa fa-star'></i></span></span> {{endif}} {{endif}} As a solution for now I'm thinking of running a direct str_replace() on the outputted HTML, but if a custom theme changes even slightly the HTML there it won't work anymore. Would it be possible to add some kind of unique value to everything in a future version to make it easier to target them? Something like a data-icon="XXX" or whatever you want to add: {{if $row->mapped('pinned')}} <span data-icon="pinned"><span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="pinned"}'><i class='fa fa-thumb-tack'></i></span></span> {{endif}} {{if $row->mapped('featured')}} <span data-icon="featured"><span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="featured"}'><i class='fa fa-star'></i></span></span> {{endif}} etc. If you do implement it the question templates and all other ips apps should be updated with it, too.
  17. Uploaded new 1.0.1 version: Just waiting for IPS to approve it. The update is also already available on my site.
  18. First let me remind you to take a backup of the core_members table before running these queries just to be safe. === The column you need to edit is a bitoption one so you can't just use a straight field=value query. You can use these queries but, as @Marc Stridgen already mentioned, you'd switch it off even for new members who never accepted them in the first place: # Reset privacy policy UPDATE core_members SET members_bitoptions2 = members_bitoptions2 & ~32; # Reset registration terms UPDATE core_members SET members_bitoptions2 = members_bitoptions2 & ~64; You can try limiting how many members you reset based on their join date (or last visit/activity) to limit it to older accounts (which are likely to have accepted them already): # Reset privacy policy UPDATE core_members SET members_bitoptions2 = members_bitoptions2 & ~32 WHERE joined < XXX; # Reset registration terms UPDATE core_members SET members_bitoptions2 = members_bitoptions2 & ~64 WHERE joined < XXX; Just replace XXX with the timestamp/date you want. Or use last_visit, last_activity or any other fields you might want to check.
  19. When you move topics and leave a link this is the text the option has: If you want to delete it right away simply select the link in forum view and delete it. Doing so will delete only the link in the old forum. The topic in the new forum will be left untouched.
  20. That's not possible. You need an application (or a plugin) for that kind of functionality. I don't remember seeing anything like that in the marketplace though so you'll need one coded for you.
  21. I have just submitted a new 4.1.0 version: Just waiting for IPS to approve it now. In case you don't want to wait the new version is already available for download on my site.
  22. Confused. Do you want a list of topics or members with that code? Because it currently loads multiple topics and joins the members table. If there are multiple topics by the same user you end up with the duplicates in your screenshot. If you want topics you should use: foreach ($sql as $row) { $topics[] = \IPS\forums\Topic::constructFromData($row); } If, instead, you indeed want a list of users then you should check the user hasn't been added to the array already: foreach ($sql as $row) { if (!isset($users[ $row['member_id'] ]) ) { $users[ $row['member_id'] ] = \IPS\Member::constructFromData($row); } } Or change the query that loads the data.
  23. Most likely tyhe CSRF key is getting regenerated at some point: //<php /** * Regenerate CSRF Key * * @return void */ public function regenerateCsrfKey() { $this->csrfKey = md5( \IPS\SUITE_UNIQUE_KEY . "&{$this->member->email}& " . ( $this->member->member_id ? $this->member->joined->getTimestamp() : 0 ) . '&' . $this->id ); } While unique key, email, id, and joined timestamp don't change the session ID can change. When it does the csrfKey hash changes as well causing the error in your screenshot.
  24. New 1.0.1 version just submitted (pending IPS approval). Here's the changelog:
  25. Yes, as Marc said adding a redirect to the login page can be done with a plugin. It would also be a quick thing to code.
×
×
  • Create New...