Popular Content

Showing content with the highest reputation since 12/14/2017 in all areas

  1. 2 points
    Write the last login date/time in a custom data field attached to member, lets call it "Last login time". But do that in the end of your actions. Something like this: Event: User logs in Condition: Compare the current date/time with the custom data field "Last login time" that you will create Action1: Do whatever you want to do. Action 2: update "Last login time" with the current time. Keep in mind that many members save their login, I am not sure if the event is triggered in this case.
  2. 1 point
    HI @Kevin Carwile, Could you please include events related to invoices in a future revision of Rules? Right now the Commerce module only looks for product-related events, but it would be logical to be able to execute actions when an invoice is created, paid, cancelled, expires, etc. etc. RIght now I don't see that in the Content: Commerce menu. Thanks!
  3. 1 point
    Rules is extremely powerful app, but not the most user friendly, that's a known fact. This prevents it from getting popularity it deserves both with the members and other developers. My suggestion here is to fix the issue with user friendliness, of course if it is possible. So, we can export our rules as XML and give them to others. shortening the path for them, but unfortunately this does not improve the user friendliness by much. You can serve a perfect rule on a plate, if the other side does not understand it, they won't be able to make the small tweaks required to customize a rule for their use case and we are back at the start. My suggestion is to build another layer in the app, allowing us to export rules as a plugin with settings. So the other users won't have to modify the events/conditions/actions, they will just change a few settings that we expose to them. For a simple example lets take the "send member a welcome pm" use case. Right now you need to create event (member is validated) and action (send the pm from this author). The last sentence is in foreign language for almost all people. It will be much better if I can create the "rules" logic and export it as a plugin that has two setting fields - one for sender, one for the message and thats it. The end user just needs to have the core of the Rules installed and they don't have to care about events, conditions and actions, this is all taken care of under the hood. This will allow many of us to share our creative rules in a way that is simple for the others and won't require excessive support. Right now I do have some creative stuff (I think) and I do have even bigger ideas. But I definitely don't want to provide my ideas on the marketplace and be forced to deal with all the questions that will come with the more complicated rules. So it will look like this: Kevin - develops and supports the core, everyone will have to have this. People like me - provide creative rules as plugins. The heavy lifting of the development will be taken care of in the core, we can use our creativity to develop final solutions for the ordinary users. We will also support our plugins with answering questions, improvements, etc. Ordinary users - they will buy the plugins and the core. So no contribution from their part, except increasing the popularity of the app and the plugins and providing monetary compensation to the other two layers. I hope this is doable and I am sure it can bring some life in to the application, because I frankly think right now it is almost abandoned. There haven't been any new features related to 4.2 and 4.3 and even though @Kevin Carwile supports it with the rare bug fix here and there the development to me is far from where it needs to be.
  4. 1 point
    Ok. Please try using this patch file and see if you have a different result. ./applications/collab/hooks/ipsMember.php ipsMember.php
  5. 1 point
  6. 1 point
    Hi, Group Owner who is bringing over his 1700 member group wanted me to ask about two items, which I thought were reasonable suggestions: 1. Add "Join" button to cover photo. He's trying to attract non-community members, and there's no "register" or "sign in" button within the collab to get them logged in. 2. Add email invitations to non-community members in Manage Members. Same as above, he has no way of reaching out to invite them directly to his new group.
  7. 1 point
    Use subrules for "case" like functionality. Any common conditions that apply to all the rules in the group can be added to the parent rule, and then subrules can take advantage of the individual conditions you mentioned, while each has their own set of actions.
  8. 1 point
    Thanks. The action you want to select is the one for creating a new private conversation. For the sender, use the manual config and type the name of the account you want to use. For the message content, just use one of the available tokens listed at the top of the page.
  9. 1 point
    No. getRulesData and setRulesData operate on one piece of data per key. If your data happens to be an array. You can add or remove items from the array, but that is not a rules function, thats just basic php array manipulation.
  10. 1 point
    This was a bug. The following patch file will fix it. ./applications/rules/extensions/rules/Definitions/Content.php Content.php
  11. 1 point
    Right. And yes, in the templates we also can choose to show the currency we want to be shown, and do not let another currencies to be displayed, although they are all in usage.
  12. 1 point
    The condition checks if the specified topic is in the specified forum. You manually specified the forum and you manually specified the topic. So those are the two things its going to compare every time. The topic you manually inputted is always in the forum you manually inputted. Therefore the result is always true. If you want variable results, you have to select the topic from the event to compare.
  13. 1 point
    Ok, so the float value is being truncated to 2 decimals because of the way that the float database column is created when adding the float custom data field. It is created as a float value of length 22,2 which means that it will only support 2 decimal places. I changed that so that float custom data fields will have a specification of 22,10 which means that they will support up to 10 decimal places. ./applications/rules/sources/Data/Data.php Data.php As for the number format including a comma instead of a decimal. I don't know where that $value from your code example is coming from, but it likely contains a localized number format which uses comma as a decimal separator. This could be done by your browser upon submission or it could be in the source of where you get that $value from. Instead, process the value to the correct format in your custom php code. When you use the actual number form entry field from the edit page of the image, when the value is processed by the number field on the backend, the format is standardized, which is why it works when you edit the image.
  14. 1 point
    Everything is hardcoded to 5 decimal places max. Sorry.
  15. 1 point
    Declaring a named function in your php code is going to cause a fatal error if the code is ran more than once, since you cannot redeclare a function name in PHP once it has been declared. You should use an anonymous function instead.
  16. 1 point
    As I said before (and before you changed the topic title), im not going to compare clubs that comes with IPS to one of the more expensive apps. An idiot should know something you pay that much for, should / is better. Im saying you should get a little more with it. Seems like you get the bare-bones of this "Club++" with no real documentation. Honestly at this point, it seems abandoned with one fanboy lurking around that's pointlessly arguing with someone who is trying to make the app better with some feedback.
  17. 1 point
    Yeah i wouldnt say that... Styling and flexibility is 2 things that totally lack in it and support. Made a topic about accessing the collab header under a guest account and he wont approve my other posts under it, nor reply back.... Deafult header is meh. And the widget customization is mega meh so just changed em but he still doesnt reply/approve my other questions
  18. 1 point
    @Dan I have already verified my rule works for NEW Topic Created as well as replies to the topic. As @Kevin Carwile said, it's not easy to tell if it is the first "comment" or not. But for my use case at this time, it's fine. When I am not busy setting things up and trying to bring new members, I will revisit and see what I can do. To much going on right now.
  19. 1 point
    Solved, can simply use: $comment->author()->data_key
  20. 1 point
    Well, @Kevin Carwile provides the spark I needed. I was not thinking it could be a multiprocess to save the post. So I thought, It has to be there somewhere and then realized what the first post within a thread is... It's a COMMENT So, My Rule Is fired from Topic Comment has been created then I set a few conditions Check that the content is indeed a Forums / Topic (Comment) I Sub check that it is in an allowed forum and not just anywhere on my board Then I created a Secondary condition, that checks content length, using custom PHP; If not true the actions will not run. //<?php if(strlen($content->post) >= 150){ return TRUE; } return FALSE; That's it.. Now I can do any actions based on this and the new forum topic. Due to the holiday, I have not fixed this but on replies to the topic that meet all the conditions, the rules would run. In my eyes this really is not terrible as the reply is a worthy reply and encouraging detailed replies is a plus. I may not even "fix" this, leave it as an easter egg :-)
  21. 1 point
    Right to your custom action there is a button "Schedule manually". Click on it and you will go inside the action's settings. For making it run on a daily basis, you need to setup it in the way like this: Once the schedule is setup, add a new rule with the Event "Custom Action triggered: <your custom action name>". And for an action for the new rule you can choose "Update custom data: <your integer custom data field's name>". And that's it: it will run daily and update your custom data field to the necessary integer.
  22. 1 point
    I'm proud to be one of the first six users, who support Kevin's application by purchasing it on the marketplace I hope, that being a part of Miller Media and starting to get payments for the Points Economy application, Kevin will also start to consider implementing new features to this great application! I've checked trough the topics in this category, and found many good ideas worth to be implemented. I summarize them here for easy search and analysis: Besides of the gaming plan you wrote in the second post of this topic, the other good ideas are: - more graphs on the Economy Dashboard; - new widgets: 1) showing the Top-X users who got most points within a specific time period (day/week/month/year), 2) showing the most *rich* people among the users, who have points in a specific currency. (this info we have in the ACP, great to have it available somewhere on the forum). - ability to adjust points manually for the specific users groups (moderators) on the front end (without using the ACP), - Donations - When changing points from one currency to another, there should be a field somewhere on the Economy Dashboard, showing the current exchange rate between these currencies; - Reactions support! Would be great to find out the solution for this issue - the whole reputation system is currently out of our control which is very bad... By the way, the new addon called "Points" has the new Reaction system support: the points can be earned/lost according to the reaction given!
  23. 1 point
    This recipe adds a custom data field to forums which can be used to make topics posted in the forum automatically expire after a set number of hours. A custom action is used to schedule the locking of the topic at the given time. This recipe could easily be tweaked to extend the scheduled lock time if the topic author re-posts or under some other condition. auto-expire-topics.xml
  24. 1 point
    Create a custom action. Add a member argument. Then create a rule for that custom action which checks if the member has been active (member attribute check) within the last 24 hours and credits the points. Then schedule that custom action to bulk process members on a recurring basis every 24 hours.
  25. 1 point
    Synopsis Unlock and create all new features on your site by attaching rules to commerce events. A solution is available which adds the following ECA’s to rules. Events: Automate site features based on commerce events An invoice is marked paid/unpaid A product line item has been paid/unpaid on an invoice A product renewal has been paid/unpaid on an invoice A product purchase has been generated A product purchase expiration has been changed A product purchase has expired A product purchase has been cancelled A product purchase has been deleted An expired product has been re-activated A product purchase has been transferred to a new customer A payment has been received on an invoice A payment has been refunded on an invoice A payment has been blocked by a fraud rule A fraud rule has been checked Conditions: Easily check for commerce conditions Check for a specific product or products Check if a product is in a certain product group Check if an invoice has specific products on it Check if an invoice has a particular status Check if a member has purchased certain products Check the status of a transaction Check the method of a payment Actions Change the status of an invoice Trigger a fraud rule match Advanced Fraud Prevention: Check for specific situations using advanced fraud rules This expansion unlocks the full power of the MaxMind fraud feedback service and allows you to create advanced fraud rules which use the full range of available fraud data for every transaction. The following data is made available for you to use in rules: Documentation: http://dev.maxmind.com/minfraud/#Output Risk Score: The risk score of the transaction Proxy Score: The risk score of the users IP address Anonymous Proxy: Indicates if proxy is anonymous Corporate Proxy: Indicates if proxy is corporate Country Match: Indicates if IP country matches the billing address. City/Postal Match: Indicates if the city matches the postal code Phone Match: Indicates if phone number is in billing area High Risk Country: Indicates if IP country is high risk High Risk Shipping: Indicates if shipping address is high risk IP/Billing Distance: Distance in KM between IP and billing address IP Accuracy: Accuracy radius of the IP location IP City Name: The city associated with the IP address IP Region Name: The region associated with the IP address IP Country Name: The country associated with the IP address IP Region Code: The region code of the IP address IP Postal Code: The postal code of the IP address IP Metro Code: The metro code of the IP address IP Country Code: The country code of the IP address IP Continent Code: The continent code of the IP address IP Latitude: The latitude of the IP address IP Longitude: The longitude of the IP address IP Timezone: The timezone of the IP address IP Autonomous System Number IP User Type IP Connection Type IP Provider IP Organization Region Confidence Rating Postal Confidence Rating Country Confidence Rating MaxMind Error