Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


 Content Type 



IPS4 Providers

Release Notes

IPS4 Guides

IPS4 Developer Documentation

Invision Community Blog



Everything posted by evandixon

  1. I have a test instance of 4.5.1 inaccessible to the web, requiring HTTP Basic Auth for everything except /api. When I try to use the new "Sign into Marketplace" feature, I get this error message: This is most likely a result of the basic auth, but I'm unable to find what specific endpoint the marketplace server is hitting. Anyone know if there's an endpoint I can exclude from basic auth to make this work?
  2. Each database gets its own mySQL table, so you could write your own program to read that data if you needed.
  3. Found the issue. \IPS\Content::searchResultSummaryLanguage is what adds that text, and the core system template "searchResult" only displays that if there's a container. So I need a container. After doing the bare minimum to get containers implemented, rebuilding the search index because the lack of containers was cached, and after fixing some undefined language stuff, it works:
  4. I have a \IPS\Content\Item class that implements \IPS\Content\Searchable. I've successfully gotten it to display arbitrary content in the search snippet in expanded view: I have not, however, succeeded in getting anything in condensed view. Other content items have a "user posted a ___ in ___", but mine shows nothing: When I look at the other applications shown in this picture, this isn't stored in the snippet template. As far as I can tell, something's displaying the language item "x_created_(class)" or "x_created_(class)_in" here, but I don't know how to tell the system to do so for my content item. Simply making sure those language items exist isn't enough, and based on other parts of the site, I'd expect to see the placeholder if it was. Does anyone know what I need to do for this specific behavior? In case it's relevant, my content class does not have a container. Occasionally this results a quirk I can work around, and I don't know if this is another one.
  5. That's what I needed. Nginx wasn't routing calls to .php urls to index.php. If anyone else has this issue, my nginx config looks something like this now. location /home/ { index index.php index.html; try_files $uri $uri/ /home/index.php; location ~ \.php$ { try_files $uri /home/index.php; # THIS is the part I was missing include our_fastcgi_params.conf; # Stores fastcg_pass and friends } # (Other stuff for uploads and ACP) } This post also has some useful stuff if the above doesn't fix any future reader's issue:
  6. One of my site's members alerted me to some broken links, all of which are old URLs from when we used to run vBulletin. Turns out the converter app got updated while the redirect pages didn't (i.e. showthread.php and friends). I'm seeing this in the system logs: I found this thread saying that apparently these redirect files haven't been needed for quite a while, but it's still broken for me: When I use the redirect file, I get the error "Something went wrong. Please try again.". When I remove it, I get "File not found." thrown from php-fpm because the file doesn't exist. Does anyone know how redirects are supposed to work in the current version and/or how to get them working again?
  7. I would only like lazy loading if it didn't distract from viewing the site. If not done properly, like what I've seen on this site so far (looking forward to trying the fix), images telegraph themselves as they pop in, making the user notice the lazy loading rather than the content on the page. I do see your point about bandwidth usage though. That's one of the reasons why I haven't moved my site to the cloud: the bandwidth usage costs more than all the other resources combined. For now, I stick to my dedicated server that doesn't charge for bandwidth usage while simultaneously providing 25x the speed I actually need. How did we get here, bandwidth potentially costing hundreds more per month than a physical server? I blame ISPs, but the root cause is probably capitalism.
  8. Lazy loading seems like a neat idea, but after scrolling through this thread, it distracts from the normal experience of scrolling down a webpage. I reloaded and hit F12 to watched the network traffic on that page. It didn't seem to matter how long I sat at the top of the page; the images didn't load until I scrolled down. Is it possible to trigger the image loads before the user scrolls down? If a user spends a lot of time reading the first post, the browser could be using that time to download the images that will be needed when scrolling down. Another thing that results from the lazy loading is that images just pop into place, changing the vertical page size. Is it possible to save some sort of size information, so that the initial page load reserves the visible area of the image before loading the real image*? This might not be needed if my first suggestion is implemented, since this is how images already work most places on the internet. * The first image in this blog post implies that might already be intended. If it is, then it's not working for me.
  9. I whipped something up on my site using forum sidebars, but this is a manual process, and I too would like a specialized option. There used to be a local moderators plugin, but it was removed the day I was about to buy it. That probably means it was far too outdated.
  10. This would be helpful from time to time. Just last week (or maybe the week before that) I had to make a manual DB edit to tweak something. For anything bigger than an edit of the warn message, however, I'd still opt for revoking and reissuing.
  11. It's currectly not a feature it seems. See this feedback thread for opinions similar to yours:
  12. I think it's a bug in the default theme. The submit file button is visible to everyone who can upload a file in any category, and clicking it gives the user this error. I opened a low priority ticket earlier for today after identifying what I think is the culprit. I'd post it here, but it's not showing in the client area (since it's low priority I guess).
  13. Our site has a lot of nested categories to organize our vast number of similar-but-distinct files and could really benefit from this, being able to view all of the top category or any combination of the subcategories.
  14. I wasn't aware of the email debug switch, but an alternative is a fake SMTP server like this one: https://mailtrap.io. Should save you from dealing with logs, and you can still see the emails if you want.
  15. I got another email from this guy asking to be unsubscribed. Turns out that once you follow a thread and opt-in to email notifications, this overrides all other notification settings, including unchecking all Email options in the notification settings, and the only way to make it stop is to change the settings for that particular piece of followed content... which is hidden in a list of various types of content that the average user won't want to look through.
  16. He set these settings, a year or two after following a thread: This appears to apply only to new content and not previously-followed content, which was hidden in one of the sidebar links in the first post.
  17. I got an email from a user who's been receiving digest emails and would like them to stop. Seeing that he already unsubscribed from newsletters, I checked the unsubscribe link at the bottom of the email, which led to https://(our IPS install)/followed/?filter=digest. This is what I see: At a glance, it looks like he's not following anything. However, after clicking all the links on the side, I found that he's following a single forum topic. It would be nice if there was an aggregate view of all followed content to improve the UX of unsubscribing from notification emails.
  18. I wonder if a word filter could be used for specific emoji? (ACP > Posting > Word Filters) I haven't tried it for emoji, but if it doesn't work, maybe IPS could do something. It wouldn't disable the emoji character entirely, but you could hold the posts for moderator approval.
  19. Looks OK to me, except the header doesn't seem to be sized correctly: Using Chrome 66 on Android 8.
  20. Some boards have lots of new posts in lots of threads, and the thread view gives a better bigger picture.
  21. Version 1.0.1


    If your site's like mine, people consistently use the Contact Us form to ask questions that are better suited for the forums. I searched all over and couldn't find a way to put a message explaining what to use the form for. So I made my own way. This plugin lets you set a custom message to be displayed above the contact form, using a WYSIWYG editor. Built on 4.3.1, and tested on 4.2.9 (and later 4.4.4). I make no promises this won't interfere with other 3rd party alterations to the Contact Us form.
  22. From my limited experience using MVC, generally the controller is the thing responsible for interacting data over HTTP, and the model is only concerned with things related to the model and with exposing methods so that the controller can do what it needs with the model. This also helps from an automated testing perspective, because indirect inputs such as form data is a pain to set up. That said, I definitely see the appeal of parsing form values in only one place when there are two controllers that would be doing it. Because first party applications do parse form values in the model (in a method called "processForm" IIRC), it doing the same wouldn't be out of place. Also this helps prevent code duplication. Because neither way is wrong per se, it's up to you. I'm personally leaning towards having it in the model, since I would prefer avoiding code duplication over optimizing pure separation of logic. (Even though it feels wrong to intentionally disregard OOP best practices.)
  23. Sounds like there may be a problem with CKEditor. Try looking in the JS console for any relevant errors. Sadly, the only way I know to go forward is to reset it, which will remove all of your CKEditor customizations (custom buttons, placements, permissions, etc). So before you do that, make sure to clear the system cache. Resetting CKEditor may be worth a try if that doesn't work. I recommend making a backup first if you did customize the editor a lot.
  24. It's the same database in MySql, but the collections of records are called "databases" within IC. Technically, each has its own MySql table, probably because each record can have as many custom fields as you want. For example, you could make a database for bug tracking (like this one). Two of the fields are of course Title and Content, but the IPS bug tracker has a custom field for the status of the report. You could take it a step further and add a custom field for who's assigned to fix it, have multiple content fields (maybe one's for exception messages and another's for repro steps), or anything else you can imagine. Additional reading, conveniently made with the very application it's written about. Also check out opentype's pages templates for more inspiration. My site makes use of Pages SuperDocs and Pages SuperHelp.
  25. Having previously used the Portal application you're using and having moved to the Pages application, I recommend this kind of setup: Create a database. Set the database index to "Show records like articles". Setting this index type makes records look like the following: If you don't like the truncation, you can later edit the display template (this one's called "entry" in Category Articles), by replacing this: <section class='ipsType_normal ipsType_richText ipsType_break ipsSpacer_bottom' data-ipsTruncate data-ipsTruncate-size='7 lines' data-ipsTruncate-type='remove'> {$record->truncated()|raw} </section> With this: <section class='ipsType_normal ipsType_richText ipsType_break ipsSpacer_bottom'> {$record->content()|raw} </section> For your own future sanity, you should create a new display template first, then modify that one. Configure records to create forum threads. Cool thing is that comments can be shared across the record and thread. If you create more categories, you can override these settings for each category (for example, each category could post in a new forum). When creating a new front-page post, add it to the database (see the "Add new article" button two images up) When wanting to front-page an existing thread, make sure it's in the appropriate forum (the one a topic would automatically be created in), then use the Copy to Database feature. (Note how this is in News Discussion) You'll also want to select "Copy Posts". (Note: in early versions of 4.2, I encountered an issue where copying a thread to a database like that created a separate thread (because the thread wasn't properly linked to the record, and settings said for threads to be created for unlinked records). I wrote a plugin to fix it, and I was about to publish it, but I can no longer reproduce the issue without it. It's possible it was fixed sometime in the past year, though I don't see any obvious code fixes, and I need to do more testing before I'm comfortable removing my plugin from production. If you or anyone else encounter this issue, I can provide this plugin.) I recommend trying this out either in a test instance or in a free demo before moving away from your current, stable setup.
  • Create New...