Jump to content

Interferon

Members
  • Posts

    1,412
  • Joined

  • Last visited

  • Days Won

    4

 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 Interferon

  1. I am playing around with the badge / achievements feature and I have a couple of suggestions. I plan to award achievements from our desktop software program. It looks like the WebAPI supports this. It would be good to have a customizable description for badges, so the user knows what they did to earn it, besides just seeing the badge title, which is usually some kind of joke or pun. It would also be good to have badges that are a result of incremented progress. Like if I want a badge after the user creates 100 boxes, each time they create a box I would increment their progress towards the badge. This is how Steam handles some achievements.
  2. You can create a feed block that lists members, and use this code to display their email addresses. Add the block to a page that only the admin has access to, load the page, and you can then copy and text the list of email addresses: <h3 class='ipsType_reset ipsWidget_title'> {$title} </h3> {{if $display === 'csv'}} <div class='ipsWidget_inner {{if $orientation == 'vertical'}}ipsPad{{else}}ipsPad_half{{endif}}'> {{if count( $members )}} <ul class='ipsList_inline ipsList_csv ipsList_noSpacing'> {{foreach $members as $row}} $row->email<br/> {{endforeach}} </ul> {{else}} <p class='ipsType_reset ipsType_medium ipsType_light'>{lang="widget_members_no_results"}</p> {{endif}} </div> {{else}} <div class='ipsWidget_inner {{if $orientation == 'vertical'}}ipsPad{{else}}ipsPad_half{{endif}}'> {{if count( $members ) }} <ul class='ipsList_reset'> {{foreach $members as $member}} <li class='ipsPhotoPanel ipsPhotoPanel_tiny cAnnouncement'> {template="userPhoto" group="global" app="core" params="$member, 'tiny'"} <div> <h4 class='ipsType_large ipsType_reset'>{$member->link()|raw} <a href='{url="app=core&module=members&controller=profile&id={$member->member_id}&do=reputation" seoTemplate="profile_reputation" seoTitle="$member->members_seo_name"}' class='ipsPos_right ipsRepBadge {{if $member->pp_reputation_points > 0}}ipsRepBadge_positive{{elseif $member->pp_reputation_points < 0}}ipsRepBadge_negative{{else}}ipsRepBadge_neutral{{endif}}'><i class='fa {{if $member->pp_reputation_points > 0}}fa-plus-circle{{elseif $member->pp_reputation_points < 0}}fa-minus-circle{{else}}fa-circle-o{{endif}}'></i> {number="$member->pp_reputation_points"}</a></h4> {$member->groupName|raw} <br> <span class='ipsType_light ipsType_small'>{lang="widget_member_joined_date" htmlsprintf="$member->joined->html()"}</span> {{if $member->last_activity}} <br><span class='ipsType_light ipsType_small'>{lang="widget_member_last_active_date" htmlsprintf="\IPS\DateTime::ts( $member->last_activity )->html()"}</span> {{endif}} </div> </li> {{endforeach}} </ul> {{else}} <p class='ipsType_reset'>{lang="widget_members_no_results"}</p> {{endif}} </div> {{endif}}
  3. 500itemsposted.svg was also not appearing correctly. It's fixed here: <svg width="150" height="150" viewBox="0 0 150 150" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M72.6698 1.06906C73.9026 -0.356357 76.0974 -0.356354 77.3302 1.06907L90.7007 16.5279C91.4918 17.4425 92.7359 17.8114 93.8909 17.4738L113.415 11.7689C115.215 11.2429 117.062 12.4411 117.336 14.3134L120.308 34.618C120.483 35.8193 121.332 36.8088 122.485 37.1555L141.964 43.0158C143.76 43.5561 144.672 45.5722 143.9 47.2969L135.529 66.0007C135.034 67.1073 135.219 68.4034 136.003 69.3242L149.252 84.889C150.474 86.3242 150.161 88.518 148.589 89.5475L131.534 100.712C130.525 101.373 129.986 102.564 130.153 103.766L132.966 124.094C133.225 125.969 131.788 127.644 129.914 127.651L109.589 127.732C108.387 127.737 107.296 128.445 106.792 129.547L98.2758 148.184C97.4905 149.902 95.3847 150.527 93.8041 149.51L76.6624 138.481C75.6483 137.829 74.3517 137.829 73.3376 138.481L56.1959 149.51C54.6153 150.527 52.5095 149.902 51.7242 148.184L43.2081 129.547C42.7043 128.445 41.6135 127.737 40.411 127.732L20.0862 127.651C18.2121 127.644 16.7748 125.968 17.0342 124.094L19.8475 103.766C20.0139 102.564 19.4753 101.373 18.4663 100.712L1.41124 89.5475C-0.161359 88.518 -0.473708 86.3242 0.747986 84.889L13.9974 69.3242C14.7812 68.4034 14.9657 67.1073 14.4705 66.0007L6.10019 47.2968C5.32838 45.5722 6.24011 43.5561 8.03622 43.0158L27.5152 37.1555C28.6676 36.8088 29.5167 35.8193 29.6925 34.618L32.6643 14.3134C32.9384 12.4411 34.7847 11.2429 36.585 11.7689L56.1091 17.4739C57.2642 17.8114 58.5083 17.4425 59.2993 16.5279L72.6698 1.06906Z" fill="url(#paint0_linear)"/> <g opacity="0.2"> <path d="M61.9465 18.8175L75 3.72515L88.0535 18.8175C89.735 20.7616 92.3945 21.5575 94.8726 20.8334L113.937 15.2627L116.844 35.1249C117.215 37.6551 119.008 39.7646 121.477 40.5072L140.538 46.2416L132.335 64.5711C131.29 66.9054 131.676 69.6411 133.338 71.5929L146.323 86.8476L129.617 97.7839C127.466 99.1918 126.335 101.715 126.686 104.246L129.441 124.153L109.575 124.232C106.993 124.242 104.674 125.762 103.609 128.092L95.2875 146.302L78.5562 135.538C76.3886 134.143 73.6114 134.143 71.4438 135.538L54.7126 146.302L46.3915 128.093C45.3263 125.762 43.0067 124.242 40.425 124.232L20.5595 124.153L23.3144 104.246C23.6647 101.715 22.5339 99.1918 20.3833 97.7839L3.67714 86.8476L16.6625 71.5929C18.3239 69.6411 18.7099 66.9054 17.6652 64.5711L9.46247 46.2416L28.5235 40.5072C30.9917 39.7646 32.7853 37.6551 33.1556 35.1249L36.0627 15.2627L55.1274 20.8334C57.6055 21.5575 60.2651 20.7616 61.9465 18.8175L59.2993 16.5279L61.9465 18.8175ZM54.9076 146.729L54.907 146.728L54.9076 146.729ZM3.41314 87.1577L3.41367 87.1571C3.41349 87.1573 3.41332 87.1575 3.41314 87.1577L3.13222 86.9186L3.41314 87.1577Z" stroke="black" stroke-width="7"/> </g> <path d="M75 42C56.7794 42 42 56.7794 42 75C42 93.2206 56.7794 108 75 108C93.2206 108 108 93.2206 108 75C108 56.7794 93.2206 42 75 42ZM93.6522 79.3043C93.6522 80.1675 93.0805 80.7391 92.2174 80.7391H80.7391V92.2174C80.7391 93.0805 80.1675 93.6522 79.3043 93.6522H70.6957C69.8325 93.6522 69.2609 93.0805 69.2609 92.2174V80.7391H57.7826C56.9195 80.7391 56.3478 80.1675 56.3478 79.3043V70.6957C56.3478 69.8325 56.9195 69.2609 57.7826 69.2609H69.2609V57.7826C69.2609 56.9195 69.8325 56.3478 70.6957 56.3478H79.3043C80.1675 56.3478 80.7391 56.9195 80.7391 57.7826V69.2609H92.2174C93.0805 69.2609 93.6522 69.8325 93.6522 70.6957V79.3043Z" fill="white"/> <circle cx="117" cy="117" r="31" fill="#334155" stroke="white" stroke-width="4"/> <path d="M96.4082 116.91L97.4746 107.516H107.834V110.575H100.483L100.026 114.549C100.898 114.083 101.825 113.851 102.807 113.851C104.567 113.851 105.947 114.396 106.945 115.488C107.944 116.58 108.443 118.108 108.443 120.071C108.443 121.265 108.189 122.335 107.682 123.283C107.182 124.223 106.463 124.955 105.523 125.479C104.584 125.996 103.475 126.254 102.197 126.254C101.08 126.254 100.043 126.03 99.0869 125.581C98.1305 125.124 97.373 124.485 96.8145 123.664C96.2643 122.843 95.9723 121.908 95.9385 120.858H99.5693C99.6455 121.629 99.9121 122.229 100.369 122.661C100.835 123.084 101.44 123.296 102.185 123.296C103.014 123.296 103.653 123 104.102 122.407C104.55 121.806 104.774 120.96 104.774 119.868C104.774 118.819 104.516 118.015 104 117.456C103.484 116.897 102.752 116.618 101.804 116.618C100.932 116.618 100.225 116.847 99.6836 117.304L99.3281 117.634L96.4082 116.91ZM123.233 118.357C123.233 120.913 122.704 122.868 121.646 124.223C120.589 125.577 119.04 126.254 117 126.254C114.986 126.254 113.445 125.59 112.379 124.261C111.312 122.932 110.767 121.028 110.741 118.548V115.146C110.741 112.564 111.274 110.605 112.341 109.268C113.416 107.93 114.96 107.262 116.975 107.262C118.989 107.262 120.529 107.926 121.596 109.255C122.662 110.575 123.208 112.475 123.233 114.955V118.357ZM119.564 114.625C119.564 113.093 119.353 111.98 118.93 111.286C118.515 110.584 117.863 110.232 116.975 110.232C116.111 110.232 115.472 110.567 115.058 111.235C114.651 111.896 114.436 112.932 114.41 114.346V118.84C114.41 120.346 114.613 121.468 115.02 122.204C115.434 122.932 116.094 123.296 117 123.296C117.897 123.296 118.545 122.945 118.942 122.242C119.34 121.54 119.548 120.465 119.564 119.018V114.625ZM138.163 118.357C138.163 120.913 137.634 122.868 136.576 124.223C135.518 125.577 133.969 126.254 131.93 126.254C129.915 126.254 128.375 125.59 127.309 124.261C126.242 122.932 125.696 121.028 125.671 118.548V115.146C125.671 112.564 126.204 110.605 127.271 109.268C128.345 107.93 129.89 107.262 131.904 107.262C133.919 107.262 135.459 107.926 136.525 109.255C137.592 110.575 138.138 112.475 138.163 114.955V118.357ZM134.494 114.625C134.494 113.093 134.283 111.98 133.859 111.286C133.445 110.584 132.793 110.232 131.904 110.232C131.041 110.232 130.402 110.567 129.987 111.235C129.581 111.896 129.365 112.932 129.34 114.346V118.84C129.34 120.346 129.543 121.468 129.949 122.204C130.364 122.932 131.024 123.296 131.93 123.296C132.827 123.296 133.474 122.945 133.872 122.242C134.27 121.54 134.477 120.465 134.494 119.018V114.625Z" fill="white"/> <defs> <linearGradient id="paint0_linear" x1="0" y1="0" x2="150" y2="150" gradientUnits="userSpaceOnUse"> <stop offset="0.140625" stop-color="#0992B3"/> <stop offset="0.869792" stop-color="#FCBF25"/> </linearGradient> </defs> </svg>
  4. The default badge for "week one done" is showing a number 3 instead of a 7. I fixed it here: <svg width="150" height="150" viewBox="0 0 150 150" fill="none" xmlns="http://www.w3.org/2000/svg"> <circle cx="75" cy="75" r="75" fill="url(#paint0_linear)"/> <g opacity="0.2"> <circle cx="75" cy="75" r="71.5" stroke="black" stroke-width="7"/> </g> <path d="M75 40C55.6695 40 40 55.6695 40 75C40 94.3305 55.6695 110 75 110C94.3305 110 110 94.3305 110 75C110 55.6695 94.3305 40 75 40ZM86.5255 91.4745L71.5 76.449V54H78.5V73.551L91.4745 86.5255L86.5255 91.4745Z" fill="white"/> <circle cx="117" cy="117" r="31" fill="#334155" stroke="white" stroke-width="4"/> <path d="M125.073 107.149L116.001 128H111.086L120.174 108.31H108.508V104.539H125.073V107.149Z" fill="white"/> <defs> <linearGradient id="paint0_linear" x1="0" y1="0" x2="150" y2="150" gradientUnits="userSpaceOnUse"> <stop stop-color="#344256"/> <stop offset="1" stop-color="#65758C"/> </linearGradient> </defs> </svg>
  5. A couple of times they touched on using IPB activity as data in an automated marketing campaign, like if they haven't logged in in a while, send out an email. I think there's a lot of potential there. If you can collect and analyze data from all IPB communities that opt into data collection, that could help you get an understanding of customer behavior and how to get them to buy products based on behavior.
  6. Since the coinbase crypto payment gateway is no longer supported, we have no way to receive payment from our single second biggest market, the Russian Federation, yet there is no law in place that forbids us selling to them.
  7. The reason I bought this is to hide "About me" profile spam. A lot of spammers will register an account and then fill in the about me section of their profile with some meaningless spam and a URL. These links all over our website to low-quality domains probably hurt our SEO. I disallowed general members from editing the profile field in the settings, so that only paying customers can use it. However, the thousands of existing spam profiles are still appearing on our site. Is there any way to hide these without deleting all user "About me" fields?
  8. Upgrade is complete. I disabled all optional addons and plugins during the process, then updated and enabled each addon one at a time, testing each one. The only issue I am having is that our store is displaying an error when you click on the "Software" category: /store/category/1-software/ This occurs even if all add-ons are disabled, using our own custom theme or the default IPB theme.
  9. I would like an update for this. We actually have need for it now with the Russia situation. I have customers that can't pay any other way.
  10. I uploaded the files, then navigate to /admin/upgrade, log into my account, pass the requirements check, and it asks for my license key. When I enter my license key it says: There is no mismatch between the URL listed in the client area for this key and the install location. They both match. How to continue? --------- Ah, I was missing "www." in the URL. It is working now...
  11. All the requirements are met. So I should go into the client area, download "Invision Community.zip", and upload all the files, as if it was a first-time installation?
  12. I am getting ready to upgrade from IPB 4.5.4.2 to the latest. First, I am upgrading PHP from 7.4 to 8.0. After I do this, I get a 500 Internal Server Error: The server encountered an internal error or misconfiguration and was unable to complete your request. I cannot log into the admin panel either. All plugins and extra applications were disabled before changing the PHP version.
  13. This was suggested as a payment system by one of my would-be customers: https://xsolla.com/ It looks like this payment gateway is open to all countries and is not being affected by any sanctions. I don't know anything about them but they support subscriptions, which is what we use.
  14. Our dark forum skin is the default with minimal changes and most of the colors picked in the visual editor. It's not very hard to do.
  15. This is what I am saying I could create, a chat application that work with your forum system:
  16. I've experimented with video hosted on our own site, and I wouldn't really recommend it for anyone running a smaller community. What I saw was a few users uploading gigs and gigs of videos that were basically all the same thing, with few views, so I ended up paying month after month to store hours of videos that no one was watching. I got rid of this feature and my S3 bill dropped back down close to zero.
  17. If custom fields can also be populated in the post file end point, then that sort of completes the "circle of life". For example, we can have the uploading program calculate the number of polygons in a 3D model and submit this info automatically when the file is posted, then this data can be displayed in the application when browsing items.
  18. I have had people recently asking for something like this, the ability to purchase credit on their account and send it to another account. Presumably this is because they don't want their bank or credit card to get charged past a certain threshold each month. We're moving to a subscription model. I have no idea how it would be possible if it weren't for IPB's good support of this feature in commerce.
  19. Our application supports files dependencies. It would be better to warn the user before they download a file that they need to install another required file first, rather than to tell them after they download that the now must download a much bigger file.
  20. Is there any way to retrieve file info for extra fields in the Downloads application? It would be useful to be able to fetch this data.
  21. This code does it, but does not properly parse the CSS attribute, so if any other style elements are added it will fail: <?php function getBlogHeaderImage($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $page = curl_exec($ch); curl_close($ch); // Remove some HTML elements $dom = new DOMDocument(); $dom->loadHTML($page); $classname="cBlogEntry_withPhoto"; $finder = new DomXPath($dom); $items = $finder->query("//*[contains(@class, '$classname')]"); if ($items->length == 0) return ""; $style = $items[0]->getAttribute("style"); $style = str_replace('background-image: url("', '', $style); $style = str_replace('")', '', $style); return $style; } $url = 'https://linustechtips.com/blogs/entry/2114-you-dont-want-to-use-a-linux-converted-chromebook/'; echo(getBlogHeaderImage($url)); ?>
  22. This seems like the opposite of what it should be doing, because this end point does not accept an API key: https://invisioncommunity.com/developers/rest-api?endpoint=core/me/GETindex I am using the same code to access other API features with no issues. IPB 4.5. Edit: This is a generic error that also gets used if the authentication token is wrong. There's no problem.
  23. It looks like the values for 'term' and 'unit' have been swapped, at least in IPB 4.5: https://invisioncommunity.com/developers/rest-api?endpoint=nexus/purchases/GETindex
  24. Interferon

    Videobox

    I found that the date parameter in the REST API response for videos is returning an integer, but the rest of the IPB API uses strings for dates. This is preventing me from being able to sort different types of items in chronological order in my application.
  25. I'm trying to create a visual stream of activity for my website and desktop application, incorporating gallery images, videobox videos, and blog entries into a single stream sorted by date. I have it all working except the blog entry header images. This is important, because the blog header image is what I plan to show in the background of the tiles for blog entries, making the whole system cohesive. I'd prefer not to post any screenshots of my application here, but it looks good and it's a really nice visual way to just take in all recent activity at a glance.
×
×
  • Create New...