Jump to content

iacas

Clients
  • Posts

    593
  • Joined

  • Last visited

 Content Type 

Downloads

Release Notes

IPS4 Guides

IPS4 Developer Documentation

Invision Community Blog

Development Blog

Deprecation Tracker

Providers Directory

Forums

Events

Store

Gallery

Posts posted by iacas

  1. 3 hours ago, InvisionHQ said:

    Unfortunately I think that I need full access. Alternatively, we have to go by trial and error... and with this new marketplace policy, trial and error can take up to 20 days.

    Okay, and yeah, I'm not willing to give full ACP access to someone.

    There are a few of us at least now having this same bug (it seems). I'd be happy to run some SQL queries and share the results with you or something.

    What should the table show? Should it be empty? Is there a flag somewhere to tell iAwards that I don't have the Rules app installed?

  2. 5 hours ago, InvisionHQ said:

    Uhm, I can't replicate this issue on my dev board. 

    Can I log on your ACP? send me a PM.

    What's the minimum level of access that you'd need to do this? I'm not keen on just creating another admin account and giving you that, though I would like this issue to be resolved.

  3. The autoAwardRules task locks and generates a similar (or identical) error, too.

    SELECT * FROM `awards_rules` ORDER BY rule_position
    IPS\Db\Exception: Unknown column 'rule_position' in 'order clause' (1054)
    #0 /var/www/html/system/Db/Select.php(388): IPS\_Db->preparedQuery()
    #1 /var/www/html/system/Db/Select.php(286): IPS\Db\_Select->runQuery()
    #2 /var/www/html/system/Node/Model.php(224): IPS\Db\_Select->setKeyField()
    #3 /var/www/html/system/Node/Model.php(180): IPS\Node\_Model::nodesWithPermission()
    #4 /var/www/html/applications/awards/tasks/autoAwardRules.php(39): IPS\Node\_Model::roots()
    #5 /var/www/html/system/Task/Task.php(266): IPS\awards\tasks\_autoAwardRules->execute()
    #6 /var/www/html/applications/core/modules/admin/settings/advanced.php(729): IPS\_Task->run()
    #7 /var/www/html/system/Dispatcher/Controller.php(90): IPS\core\modules\admin\settings\_advanced->runTask()
    #8 /var/www/html/applications/core/modules/admin/settings/advanced.php(38): IPS\Dispatcher\_Controller->execute()
    #9 /var/www/html/system/Dispatcher/Dispatcher.php(153): IPS\core\modules\admin\settings\_advanced->execute()
    #10 /var/www/html/deity/index.php(13): IPS\_Dispatcher->run()
    #11 {main}

     

  4. I upgraded.

    Just now, got an error email, and when I click on the "Rules" tab in the Awards section of the ACP, I get this:

    SELECT * FROM `awards_rules` ORDER BY rule_position
    IPS\Db\Exception: Unknown column 'rule_position' in 'order clause' (1054)
    #0 /var/www/html/system/Db/Select.php(388): IPS\_Db->preparedQuery()
    #1 /var/www/html/system/Db/Select.php(286): IPS\Db\_Select->runQuery()
    #2 /var/www/html/system/Node/Model.php(224): IPS\Db\_Select->setKeyField()
    #3 /var/www/html/system/Node/Model.php(180): IPS\Node\_Model::nodesWithPermission()
    #4 /var/www/html/system/Node/Controller.php(111): IPS\Node\_Model::roots()
    #5 /var/www/html/system/Helpers/Tree/Tree.php(130): IPS\Node\_Controller->_getRoots()
    #6 /var/www/html/system/Node/Controller.php(99): IPS\Helpers\Tree\_Tree->__toString()
    #7 /var/www/html/system/Dispatcher/Controller.php(101): IPS\Node\_Controller->manage()
    #8 /var/www/html/system/Node/Controller.php(69): IPS\Dispatcher\_Controller->execute()
    #9 /var/www/html/applications/awards/modules/admin/awards/rules.php(34): IPS\Node\_Controller->execute()
    #10 /var/www/html/system/Dispatcher/Dispatcher.php(153): IPS\awards\modules\admin\awards\_rules->execute()
    #11 /var/www/html/deity/index.php(13): IPS\_Dispatcher->run()
    #12 {main}

    The "awards_rules" table has nothing in it. It's blank.

    The awards seem to still work. https://thesandtrap.com/awards is still fine, etc.

    But… what's up with "awards_rules" and the "rule_position" (which isn't even a column in that table)?

    image.thumb.png.d3849e4b69a13d0e3992a6ff33b5a8bd.png

  5. On 9/26/2021 at 7:03 AM, InvisionHQ said:

    @ErickF. It has just been sent to the marketplace for approval. Fingers crossed!

    Does it normally take this long?

    What actually changed? The 2.0.2 version seems to mostly work with 4.6 (though I haven't actually changed anything in the settings or setup for the awards, I've just let it be and have awarded some people things).

  6. I have three profile fields, and they've got custom formatting. Two of them are just text fields, one is a radio button with two choices.

    Since upgrading from 4.5.x (whatever the latest version was) to 4.6.5.x and now 4.6.6, my custom formatting isn't applied. Also, in the ACP, I get a weird error message that flashes and goes away, and then a jquery error is logged. You can see this happening here:

    The profile fields display properly on profile pages:

    https://thesandtrap.com/profile/1-iacas/

    They do not display properly on posts:

    https://thesandtrap.com/forums/topic/110490-rip-norm-macdonald/?do=findComment&comment=1550142

    I've looked at:

    • Enabling the default theme. No change. My theme is a child theme anyway with only custom.css changes and a small change to globalTemplate for advertising.
    • Disabling applications.
    • Disabling plugins.

    None had any effect.

    Any ideas?

  7. 7 minutes ago, Dll said:

    @Matt - this is working fine for us beyond 365 days and only gives awards to people who have logged in > than the number of days since registration to trigger the rule. Is this likely to be because we prune the IP and device logs after that period?

    I wasn't even on IPS 15 years ago, and we don't have IPs for members dating back to over ten years, so I don't think that's it.

    image.thumb.png.346240edde41ceda272f7fd6e961c60d.png

  8. 49 minutes ago, Matt said:

    ... offers two options. "Time since registered" and "concurrent daily login". These are two different things.

    Yes, I'm talking about "time since registered" portion. I'd like that to be active membership.

    49 minutes ago, Matt said:

    This rule is triggered by a new session being started. A new session is started in the code for you when you either manually log in with a form/button or visit with cookies stored.

    The rule with the condition "member logs in" is also triggered when you rebuild achievements.

    Which means a member who created an account and hasn't been back in 17 years would be awarded a "15 years since registering" achievement when you, having first upgraded to 4.6.x, rebuild achievements.

    49 minutes ago, Matt said:

    With regards to time since registered: if you chose to rebuild your achievements, the rebuild iterates through your members and looks for valid full members, who have visited at any point since you launched your community and checks to see if their joined date is old enough for the badge.

    Exactly. And problematic, and the reason for starting this topic.

    49 minutes ago, Matt said:

    Hopefully this clears it up. I understand it's a bit confusing and it seems like you've had overlapping answers because it's a fairly complex part of the suite and what happens is really conditional on the length of time since you've upgraded to 4.6, and when you last rebuilt your data and when your users last visited.

    Hence my feature request, which is particularly applicable to communities that existed long before 4.6 and the separate table: a way to award members who did "something" (make a post, react to a post, vote in a poll, something) x days, months, years apart.

    I'd be okay with "365 days of activity" (i.e. they made posts or voted or whatever on 365 different days) because that means they spent "a year" on the forum, even if it takes them four years to do it.

    I think a number of other communities fell into the same hole as I did:

    • They wanted to reward members with badges and/or points (achievements) for being long-time members of the site.
    • They set up a rule like mine above: to award people with badges and/or points when they are a member for a certain milestone.
    • They rebuilt achievements since this is the first time they've had them with 4.6.
    • They were shocked to see that members who hadn't been on the site for more than a day or two fifteen years ago were getting awarded the badges/points for "10 years of membership!" or whatever.

    So the feature request is, again, basically this: I'd like a way to give out achievements to members who have been active for a certain period of time.

  9. 21 minutes ago, Dll said:

    Well, I don't know when you last ran the rebuild or what version you're running. But if it was a while ago or prior to the latest version, perhaps it'll work as you'd expect now. As it certainly is for our community using 4.6.5.1 and appears to be working the same way on this community as well. 

    I didn't even upgrade to 4.6.x until 4.6.5.1. Last week. I was still on 4.5.x until after 4.6.5.1 was out. I set up my achievements, rebuilt them, and saw the issue. Posted in the topic I linked to earlier, talked with support last week, and eventually re-built them again without the "time since registration" achievements.

    Again, I had linked to the other discussion earlier:

     

  10. 11 minutes ago, Dll said:

    Just out of interest, based on what you're saying, this user on your site should have been awarded your one year badge, but haven't. Why would that be?

    https://thesandtrap.com/profile/62125-teal379/

    Because I disabled the rules and then re-ran the achievements again after IPS told me that it was working as designed. You'll notice that I don't even have a time-based award, and I've been on the site for quite awhile: https://thesandtrap.com/profile/1-iacas/.

    32 minutes ago, Dll said:

    I'll stop posting after this

    Hmmm.

  11. 3 minutes ago, Dll said:

    I'll stop posting after this, as it's obviously difficult for you when someone has an opposing point of view. But, here's a user on this community who registered in 2004 and hasn't logged in since. Based on how you're saying the system works, they should have the one year in badge that IPS use, but don't.

    It's not an "opposing point of view." This isn't a matter of opinion.

    According to IPS, the "user logs in for the day" condition is triggered by a rebuild of achievements. The system is working "as designed" on my forum, where these occurred:

    image.png.cd7e03cc0cc0b7e188250f99d590b2

    image.png.5ef37fc79dd619c9e7de53a91ce62a

    image.png.10aaf0e5d4532dcd0f254bf4d376b1

    He shouldn't have gotten any of those badges, but rebuilding the Achievement Rules triggers the "member logs in for the first time that day" condition and since he registered 9 days, 36 days, 365 days, or 3650 days ago (not this member but thousands of others), they get the achievement, the points, the badge, etc.

    This is working "as designed" by IPS.

  12. image.thumb.png.b3049bc38730436258d0b113dd27f4ba.png

    IPS is saying, and I saw on my own forum, that "when" is triggered by a rebuild of the achievements.

    1 minute ago, Dll said:

    I'm just telling you what we're seeing. It's different to what you apparently are, but I can categorically tell you that the behaviour on our community when running a rebuild is not at all what you're describing.

    And again I'll ask you to please stop posting here, as apparently you should file a bug, because the software is working as designed on my site, per IPS.

  13. 1 minute ago, Dll said:

    We can go round in circles for hours here.

    And yet I'm the guy who filed a ticket specifically because of this thing and was told by IPS themselves that it was working as intended, and that an achievement rebuild will always check the registration date, and so on.

    Stop posting in this topic please. You're wrong about this, per the results I saw on my forum and per IPS saying so themselves.

    I'll refer you to the second quote from IPS above:

    "The "User logs in that day" actually just the trigger to run checks. What is being checked however is days since registration. When you rebuild, it would trigger everything to be checked, as you are essentially manually triggering them. This at present is working as per design."

  14. You do. From support:

    "An achievement rebuild will always trigger the rule check. The award is for 365 days since joining so has been correctly awarded. I'm not seeing any issues here."

    "The "User logs in that day" actually just the trigger to run checks. What is being checked however is days since registration. When you rebuild, it would trigger everything to be checked, as you are essentially manually triggering them. This at present is working as per design."

    "There is currently no method to reward members who have been a long time user since before Achievements or for a long time in general without some action by the user. However, you can certainly suggest a change in our official Feature Suggestion forum for further evaluation."

     

  15. 6 minutes ago, Dll said:

    No, you've misunderstood my meaning. From what I've seen on our community, if someone signs up on September 7th 2010 and never visits again, rebuilding achievements on September 7th 2021 doesn't award them anything.

    It does. You've got this one wrong. I had a whole support ticket about it. The "user logs in" event in the rule is triggered by the rebuild of the achievements.

  16. 8 minutes ago, Dll said:

    @iacas - this isn't how the system has behaved on our community. The rebuild appears to look at the last logged in date and gives the badge based on that. What that does do is award people badges for longevity even if they haven't logged in recently, as long as their last login was > the number of days after their registration for the rule that's been set. But that seems reasonable enough to me. 

    That's my point.

    If someone creates an account on September 7, 2010, and never visits the site again, if you rebuild achievements on September 7, 2021… they'll be awarded the "10 years of membership" (3650 days) achievement.

    That's why I want something that recognizes a time frame of active membership.

    There's no value in giving a "10 years of membership (or on my forum soon, 20) to members who haven't visited in 19 years. That's goofy. It's great that moving forward there's a separate "user logged in" table but that doesn't and won't ever help someone with a long history like this, if the achievement rule is set up like that.

    I was told by the Support folks on my case to file a feature request for this… so here I am, doing that.

  17. 3 hours ago, Dll said:

    It doesn't work that way. It's based on when the user logs in, so won't award it to someone purely for registering a year ago and not logging in since. 

    It does work that way when you re-process/rebuild achievements. Doing so triggers the "user logs in" part of the rule and if they registered over ten years ago, even if they never posted, they are awarded the "10 years of membership" achievement (3650 days).

    So the feature request is for some way of measuring some actual activity like a post, a reputation given, or something to indicate the member was actually on the site to recognize "active membership" over a span of years or months or whatever.

    @Matt it's a little disappointing that you got this one wrong again given my recent ticket about it. Rebuilding achievements awarded tons of points and achievements to people that logged on one time 14 years ago and never came back again.

  18. I was disappointed to learn that the "time since joining" feature for achievements is just that: a guy who signed up and posted once on January 1, 2001 will have gotten a "20 years since joining!" achievement on January 1, 2021.

    How about an achievement rule that checks for active use of the forum? When was there first post, and their most recent? On how many days did they make a post, or at least visit (or a reaction, or vote in a poll, etc. Some sort of activity)?

    That would mean a LOT more than "this guy registered and hasn't been back since that day, but it's 20 years later now" achievements.

  19. 4 hours ago, Matt said:

    I think we have our wires crossed a bit.

    There's two options for time based rewards:
    - Consecutive days logged in
    - Time since registration 

    The latter, time since registration does go from the join date, so if that's not working correctly let me know.

    Time since registration does not care if the person has visited since they registered.

    That’s what the whole ticket was about.

  20. 9 hours ago, Matt said:

    We log log-ins in a separate table now, but of course that table only existed with 4.6 and it's not possible to populate it from pre 4.6 data. So moving forward it won't be an issue, even with a rebuild.

    Thanks.

    That makes it still not quite right for my forum (which is pretty old), but whatever.

    I'll submit a feature request for "time of active membership" (i.e. account created date, user logs in and/or posts 1 year, 5 years, etc. later).

×
×
  • Create New...