Jump to content

The Old Man

Clients
  • Posts

    3,958
  • Joined

  • Last visited

  • Days Won

    11

 Content Type 

Downloads

Release Notes

IPS4 Guides

IPS4 Developer Documentation

Invision Community Blog

Development Blog

Deprecation Tracker

Providers Directory

Forums

Events

Store

Gallery

Everything posted by The Old Man

  1. Hi folks, Is there a provided method already in IPS4 to obtain the file type or extension of an uploaded image attachment resource, or do we have to do it manually in theme templates? If I know what an image file type is already because I supplied it I can use this: href="{resource="my.webp" app="core" location="front"}" type="image/webp" but if a user uploads their image, I need to set the correct image type from the resource itself. Many thanks!
  2. Just FYI, theme_cookie seems to be missing from the cookies list
  3. I'm dumber than I look! 😁 https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link#media
  4. Thanks for the confirmation, I didn't want to reinvent the wheel and assumed there would be something built-in for IPS devs to reuse. I just want to insert some code in the head to preload an image based on device screen size. I'll have a look for some JS on MSDN.
  5. I couldn't find anything in the docs, but I want to apply some different code in template logic for desktops, tablets and phones. We can use media queries in CSS to make styling relevant for certain device screen widths and we have ipsResponsive_showPhone etc. However, is there a utility available to do the same for HTML in IPS' template logic, perhaps a PHP expression or something? Something like: {{ is small-device/phone? }} this code {{elseif is medium-device/tablet? }} this code {{else}} use this for everything else {{endif}} Many thanks!
  6. Aha, thanks for that. It would be nice if it updated via Ajax or something. Thought I was going insane so I just watched my first video again, and I did save and reload at the very end but it didn't make the setting visible. Perhaps some kind of caching issue. Yes, I'll claim that!
  7. Thanks, TBH I thought I reloaded it but must have missed that. I did expect it to show when toggled on (live). It is working now, thank you so much for confirming the right syntax. I wrote a plugin once, and I'm sure it worked live when toggling. Recording 2023-12-12 182501.zip
  8. Okay, I tried re-entering theme dev mode and now it works when saving and reloading the page. Weird.
  9. Thanks mate, yes that's exactly what I have but it doesn't work for me, even though it has too!
  10. LOL Thanks! Didn't see your updated post. Doesn't work for me though! I can however now see all my custom theme settings though: <?php print_r(array_values($this->settings)); exit;
  11. LOL! Think I need to get the value and not the key! I'm close, I used array_values and custom theme settings are not in that array! print_r(array_values(\IPS\Theme::i()->settings)); exit;
  12. Thanks, I just took a screenshot while trying out different variations. I did try your corrected syntax but for some reason, it didn't work. Update: It returns NULL for other custom theme settings too. It works for a standard one like primary_button so I must have the syntax wrong for the variable. If it wasn't asking for raw PHP, I could just use theme.mysetting
  13. Hi, Do we know if this functionality is designed to work 'as is' in Custom Theme Settings? Presumably, the setting is eval'd when the settings page loads or is updated via some AJAX or something so that it knows what to display. It kind of seems back to front to me. Setting A should toggle Setting B on/off but the way it is set up says the code goes in Setting B (so it toggles itself on/off based on Setting A). The text description below the Condition field suggests it should work, so it is probably a case of me not using the correct theme setting format, because although there is no error generated, all it seems to actually do is hide itself from view after saving. I can't see it working as the setting shows as NULL unless that's what it checks for. Maybe I should check for not null!
  14. Thanks, I was sort of following the example of the recapcha image color in custom tab. I tried dumping it and comes back as NULL
  15. Thanks, Adriano! Still not working though. The toggle setting is still hidden.
  16. Hmm, I'm wondering why this doesn't return true if this setting is enabled? <?php return \IPS\Theme::i()->settings['my_theme_setting_enabled_or_not'] == TRUE; It relates to a custom theme setting (a toggle) that is enabled and directly precedes this one that I'm entering the conditional logic into?
  17. Hi, According to this help guide and an existing setting in the AdminCP https://invisioncommunity.com/4guides/themes-and-customizations/advanced-theming/managing-theme-settings-r128/ <?php return \IPS\Settings::i()->bot_antispam_type === 'recaptcha2'; This would return true for use in a conditional theme setting so that a setting will be shown or not, but when I try this using my own custom theme setting: <?php return \IPS\Theme::i()->my_theme_setting == true; it gives me an error: Error: Undefined constant "my_theme_setting" (0) #0 C:\laragon\htdocs\ips4-dev-theme3\system\Theme\Theme.php(1818): eval() #1 C:\laragon\htdocs\ips4-dev-theme3\system\Theme\Theme.php(1797): IPS\_Theme->getCustomSettingField(Array) #2 C:\laragon\htdocs\ips4-dev-theme3\system\Node\Controller.php(496): IPS\_Theme->form(Object(IPS\Helpers\Form)) #3 C:\laragon\htdocs\ips4-dev-theme3\system\Node\Controller.php(395): IPS\Node\_Controller->_addEditForm(Object(IPS\Theme)) #4 C:\laragon\htdocs\ips4-dev-theme3\system\Dispatcher\Controller.php(107): IPS\Node\_Controller->form() #5 C:\laragon\htdocs\ips4-dev-theme3\system\Node\Controller.php(69): IPS\Dispatcher\_Controller->execute() #6 C:\laragon\htdocs\ips4-dev-theme3\applications\core\modules\admin\customization\themes.php(59): IPS\Node\_Controller->execute() #7 C:\laragon\htdocs\ips4-dev-theme3\system\Dispatcher\Dispatcher.php(153): IPS\core\modules\admin\customization\_themes->execute() #8 C:\laragon\htdocs\ips4-dev-theme3\admin\index.php(13): IPS\_Dispatcher->run() #9 {main} I've also tried: <?php return theme.my_theme_setting == true; This attempt produces no errors, but the theme setting doesn't show, it is hidden: return $this->my_theme_setting == true; and this one gives me undefined constant again! return $this->theme.my_theme_setting == true; Er, little help please?!
  18. Hi IPS, FYI there have been 6 updates to Howler.js since v2.1.2 (from April 2019) in IPS 4.7.14. Current release is v2.2.4 (Sep 2023). Please consider bringing it up to date. 🙂 Also FYI: Many thanks. Graham
  19. Sorry to hear of your ill health and leaving. Good luck for the future.
  20. I didn’t spot this until now but at 1:07 in the badge video… range sliders in the AdminCP settings! These will be really useful for Custom Theme settings! Nice implementation too!
  21. I have managed to complete the additional transactions, the stripe web hook log shows green ticks but this time nothing happened automatically on my site, so I marked them as paid. It all seems a bit flakey. Discussing payment transactions on an open forum isn’t good when I’ve asked for direct contact.
×
×
  • Create New...