• World of Warcraft Addons
  • World of Warcraft
  • Average Rating:

  • Your Rating

  • Share
  • Report Abuse

FuBar_MailExpiryFu

 
Project Updated:
Files Updated: Wed, Dec 9 2009
Supports Game Version: 3.3.0
Category: Mail, and FuBar
Tags:

, and [Edit Tags]

Project Manager: reubenhelms
Additional Authors: No additional authors
Current Version: v1.4.8
License: All Rights Reserved
Development Site: CurseForge.com
Avg Daily DL (last 30 days): 15
Downloads Total: 32,805
Favorites: 133
Comments: 30
  • About FuBar_MailExpiryFu
  •  

FuBar MailExpiryFu is a FuBar addon that will display when the oldest mail item is due to expire for your alts, and how many items are in each mailbox.

It will be useful for making sure you clear out your mailbox before items get returned to the AH or alts.

You must visit the mailbox for an alt before it can start keeping a track of the oldest mail item.

MailExpiryFu will detect mail being sent to alts.

MailExpiryFu will try to differentiate between regular mail, and pending AH sales.

MailExpiryFu will try to detect incoming mail and increment counters accordingly.

  • Downloads (7)
  •  
File Name Release Type Game Version Downloads Date
Addon Curse.com Beta 2.3.3 0 9/29/2008
  File Name Release Type Game Version Downloads Date  
  FuBar_MailExpiryFu v1.4.8 Release 3.3.0 3,375 12/9/2009
  FuBar_MailExpiryFu v1.4.7 Release 3.2.0 6,546 8/12/2009
  FuBar_MailExpiryFu v1.4.6 Release 3.1.0 6,353 5/20/2009
  FuBar_MailExpiryFu v1.4.5 Release 3.1.0 3,081 5/8/2009
  FuBar_MailExpiryFu v1.4.4 Release 3.1.0 3,583 4/16/2009
  • Comments

Add Comment  

Add

You need to login or register to post.

Benefits of Registration

  • Interact with hundreds of thousands of other gamers on an open social network.
  • Post your stories, news, images, videos, and other content to share.
  • Create a network with your fellow gamers or join an existing one.
  • Gain reputation for everything you do.
  • End86 said

    I'm getting an error. These add-ons are the latest version(auto updated from curse).

    Please help

    Date: 2009-11-30 16:41:33
    ID: 1
    Error occured in: Global
    Count: 1
    Message: ..\AddOns\FuBar_MailExpiryFu\MailExpiryFu.lua line 418:
    attempt to perform arithmetic on field 'minDaysLeft' (a nil value)
    Debug:
    ...uBar_MailExpiryFu\Libs\AceAddon-2.0\AceAddon-2.0.lua:25:
    ...uBar_MailExpiryFu\Libs\AceAddon-2.0\AceAddon-2.0.lua:23
    ...uBar_MailExpiryFu\Libs\AceAddon-2.0\AceAddon-2.0.lua:1055: ManualEnable()
    ...uBar_MailExpiryFu\Libs\AceAddon-2.0\AceAddon-2.0.lua:983:
    ...uBar_MailExpiryFu\Libs\AceAddon-2.0\AceAddon-2.0.lua:976
    [C]: ?
    ...uBar_MailExpiryFu\Libs\AceEvent-2.0\AceEvent-2.0.lua:260: TriggerEvent()
    ...uBar_MailExpiryFu\Libs\AceEvent-2.0\AceEvent-2.0.lua:910:
    ...uBar_MailExpiryFu\Libs\AceEvent-2.0\AceEvent-2.0.lua:903
    AddOns:
    Swatter, v5.6.4424 (KangaII)
    ACP, v3.2.0.23
    FuBar, v
    FuBarMailExpiryFu, v1.4.7
    BlizRuntimeLib_enUS v3.2.2.30200 <us>
    (ck=80)

    Reply Report Permalink
  • End86 said

    I just got a reply saying to delete the Lua's for this add-on in the WTF folder. I did this and its fixed.

    If that doesn't work you manually change the min days left from something other then 0 and it should auto fix itself from there too.

    Reply Report Permalink
  • Beutju said

    I often have more than 50 mails in my mailbox - 50 is the maximum, that wow ui will show.
    So when I have mails saved in your log, that will expire in 2 days, and I have more than 50 mails 'above' this mail, so, it won't be shown in the mailbox ui from wow, will your addon update its data with the data it sees (only 50 mails) and erasing the rest (the mails, that will be deleted soon)? Or will it remind them and warn me when they will expire.

    Hope you understood =)

    Reply Report Permalink
  • As an addendum, here is a case it wont be able to accurately track.

    Lets say your mail box starts empty. You place 75 items on the AH that will last 48 hours. Now lets say you log back into that (bank) alt 40 hours later, empty the mail box of successful sales, and post another 75 items.

    Now for the sake of argument, lets say that more than 50 of those auctions expire, and you dont log in for next 4 days (yeah, I know, never going to happen). What MailExpiry wont be able to track accurately is the expiry of that oldest item it cant see in the UI. That is because its never seen it before, and we're really not sure if its an item from the first bunch of auctions or the second. Given that the mail box was previously empty, and now its not, it will only be able to track the oldest item there.

    Having said that, and given typical uses of bank alts, you're likely to have mailed and item or two, to the bank alt, soon after putting up the second lot of auctions, and it will remember the expiry date of the oldest one sent (assuming it was from an alt on the same account).

    Of course, good mailbox management dictates that when you return from the 4 day break, you'll clear out that mailbox, and probably put the failed auctions back up on the AH.

    Reply Report Permalink
  • Initially, MailExpiry will remember the expiry for the oldest mail item it can see. So if you have more than 50 items when you first start using it, then it wont be able to track the ones it cant see. But I've seen your name before, so I suspect you've been using it for a while, and this case probably doesnt apply.

    You're probably in a situation where you had less than 50 mail items at some point, and now its over 50. And if I am understanding correctly, you're wondering if the expiry time is for the 50th/oldest item showing, or if it remembers the expiry of the oldest item that you cant see. MailExpiry functionality is the latter. Even though the UI only shows 50, the addon does its best to track the expiry of the oldest item it remembers.

    This is something that happens to me often, especially if I have alot of expired AH items appearing after a couple of mail items that I dont wish to collect just yet.

    However, what is untest (or that I cant remember), is what happens when that mail item does expire, and it is automatically deleted or returned. I'm fairly certain it stays red (which is probably not helpful for those with red/green colour blindness.. maybe I'll have a look into that) and has 0 days remaining. But the purpose of the addon is to remind you that mail items will be expiring soon, and we shouldnt let it get to that expiry point.

    Reply Report Permalink
  • osoviejo said

    Even with a clean install and a bare minimum addons (Fubar, Broker2Fubar, Bugsack and Buggrabber), this bombs with:

    "FuBar_MailExpiryFu-1.4.4\MailExpiryFu.lua:21: AceAddon: AceOO-2.0: Library "FuBarPlugin-2.0" does not exist."

    Upon looking, the FuBarPlugin-2.0.lua file is located in Libs\FuBarPlugin-2.0\FuBarPlugin-2.0 (an extra layer of nesting that none of the other embedded libraries use).

    After moving that file up one level, the addon works fine. My question is, how does this work for anyone else?

    Reply Report Permalink
  • Oh my. Thats a bad one. It would be the embeds.xml that is incorrect, rather than the placement of the location of the FuBarPlugin-2.0.lua, since the apparent double layer is how it is arranged in the WoWAce SVN.

    I'll have that fixed up shortly.

    I would imagine it only works because other addons managed to get their embeds.xml correct, and it loads it from there first.

    Reply Report Permalink
  • osoviejo said

    Thanks much. That would explain why it used to work before I removed a bunch of addons.

    Reply Report Permalink
  • oh, crikey. I just noticed the timestamps on those posts. My apologises. I bought a house at the start of december last year, and havent really had a proper internet connection until mid January... and I tend to only check these projects on CurseForge, since I do most of my downloading via the Curse Client.

    Reply Report Permalink
  • Thanks crowbait. I'll take a look at this, integrate your changes and see if I can prevent the situation that occurs.

    This mod is only my second foray into LUA, and even then, that was a hack of my first, LastPlayedFu, which in turn was a hack of RestFu. Little surprise that bugs are in there like this.

    With regards to svurg, I dont think there is any way for me to detect active alts on the account before you've logged into it in that installation of WoW (and have the addon installed). I just have to make sure that if the data has not been initialized correctly (ie null values for minDaysLeft), then I do initialise them properly.

    Hopefully, I'll have a fix out before the end of the day.

    Reply Report Permalink
  • Nahkohe said

    Thanks crowbait - after clearing my saved variables your update works well for me.

    Reply Report Permalink
  • svurg said

    Nice job, crowbait! This got me up and running again. The only thing that still seems broken is the case where mail is sent to a character who hasn't logged in since the addon has been installed. The sendmail hook and the SaveForAlt function assumes that the character being mailed to is already set up in the saved variables. This doesn't seem to occur until a char has logged in and accessed mail. Workaround is to make sure that after you install the addon, log into all your chars and have them check mail before sending stuff among your chars. This should ensure that the saved variables get set up correctly.

    Let's hope the original author returns to address these issues!

    Svurg

    Reply Report Permalink
  • crowbait said

    Probably more detail than anyone (except svurg?) wants below. First, my attempt at a fix. I make NO WARRANTIES of any sort, although I haven't done anything deliberately destructive. You can get it here:
    http://my.curse.com/members/crowbait/files/MailExpiryFu.lua.patched_2D00_1.4.2.txt.aspx

    You will probably have to remove your MailExpiryFu savedvariables -- a fix which wouldn't require this would be a lot more complicated (I suspect I would need to do some exception handling, and since i haven't even touched a LUA reference yet, I'm loathe to go there).

    -- Do-It-Yourself Fix Changes --

    The three changes which _appear_ to be working:
    1) Around line 193, after line "self:Save()", remove line "self:OnUpdate()".
    2) Around line 373, after line "self.savingMailboxData = false", add line "self:OnUpdate()".
    3) Around line 457, after line "function MailExpiryFu:OnUpdate()", add 3 lines:
    if self.savingMailboxData then
    return
    end

    -- Details --

    I just did a whole bunch of debugging (which is fun, since it's my first foray into LUA). In the end, this is what I think is happening:

    In certain cases, on new characters, the Save function gets called. Inside that Save function, it does a ReIndex in order to fill in some data. This calls Save again -- but he's handled this case, and Save returns cleanly if it's in progress. However, the ReIndex then attempts to Update, which tries to sort the half-built data, and ends up erroring out. I don't know the LUA flow here, but it seems like it throws an exception which exits the function without marking Save as done.

    Thus, the initial Save never completes. No further Saves can happen because it thinks it's still in the middle of a Save. And later calls to OnUpdate also fail, because the data is stuck in a half-formed setup, and is then actually written to SavedVariables in that incomplete, error-causing way.

    How to fix? First, I added a check to OnUpdate to make sure it's not saving and return if it is. But then, perhaps an update is necessary after save. So as a hack, I just called OnUpdate from the end of Save. This makes the call to OnUpdate from ReIndex redundant, so I removed that. This _might_ make the save check in OnUpdate unnecessary, because it's not clear it is ever called during a Save from anyplace else. But I left it in to be safe.

    I'm the first to admit I don't fully understand the flow of this program (or LUA), but hopefully this hack will keep it working until a real fix comes from the author. Thanks for a great addon!

    -crowbait

    Reply Report Permalink
  • Bonkle said

    Thanks a lot Crowbait, working perfectly now, brilliant

    Reply Report Permalink
  • svurg said

    I did some checking...the problem appears to be that the data being written out in the saved variables is blank for some characters, so when the code tries to look up the minDaysLeft field of that data, it throws an exception.

    The save() function contains the code that writes out the saved variable data. It is supposed to run on a tight loop, courtesy of it being registered with AceEvent:ScheduleRepeatedEvent, and also is supposed to be triggered on the MAIL_INBOX_UPDATE, MAIL_SHOW, and UPDATE_PENDING_MAIL events.

    I inserted an AddMessage("save called") to the function so I could see when it was being called, and discovered that none of this was happening. I would have expected to see a stream of "save called" chat messages due to the tight loop -- saw none. I opened my mailbox, but no chat message either.

    So it appears that for some reason the events aren't triggering the save() function. Unfortunately, I've about hit my limit of lua and WOW API understanding, so I have no clue as to how to fix it. My hope is that this message will give someone with more knowledge than I (perhaps even the author) a base to launch from.

    Hope this gets fixed soon -- as an altaholic I find it _very_ useful! What would be really neat is if it could integrate with the new calendar function.

    Svurg

    Reply Report Permalink
  • H0PE said

    Its not working for me at all since the last version. Please update...

    FuBar_MailExpiryFu-1.4.2\MailExpiryFu.lua:415: attempt to perform arithmetic on field 'minDaysLeft' (a nil value)

    Reply Report Permalink
  • Just got the same 'minDaysLeft' error. Logged out and deleted the FuBar_MailExpiryFu.lua file in \WTF\Account\\SavedVariables and it's working fine now (of course now need to repopulate the data from my alts...).

    As far as it goes the only thing I did since logging off last night (where I'd had no errors) was deleting a character and rolling a death knight. /shrug

    Reply Report Permalink
  • Had to disable the mod as the error keeps popping up even after purging the saved data. Svurg's comments appear particularly interesting, will try take a look into the code but don't think I'll have any better luck than he did as my knowledge of the underlying api is limited at best.

    The calendar integration is an awesome!!! idea btw

    /signed another hopeless altaholic

    Reply Report Permalink
  • xtoq said

    Me too. Plus, when I disabled the plugin via the right click menu, it still gave me the error. I had to log out and disable the plugin entirely.

    Reply Report Permalink
  • Veyska said

    1.4.2 was working fine until this morning when I logged into a new toon.

    [2008/11/10 16:20:07-759-x2]: FuBar_MailExpiryFu-1.4.2\MailExpiryFu.lua:415: attempt to perform arithmetic on field 'minDaysLeft' (a nil value)
    (tail call): ?:
    : ?
    FuBar_MailExpiryFu-1.4.2\MailExpiryFu.lua:465: in function `OnUpdate'
    FuBar_MailExpiryFu-1.4.2\MailExpiryFu.lua:200: in function `OnTooltipUpdate'
    FuBarPlugin-2.0-90003:393: in function `runChildren'
    Tablet-2.0-90216 (TabletLib):2370: in function `children'
    Tablet-2.0-90216 (TabletLib):2414: in function `Open'
    Tablet-2.0-90216 (TabletLib):2548: in function
    FuBarPlugin-2.0-90003:442: in function <...\FuBarPlugin-2.0\FuBarPlugin-2.0\FuBarPlugin-2.0.lua:441>

    Reply Report Permalink
  • Addon Packs Containing FuBar_MailExpiryFu
  • Similar Addons
  •  

Average downloads per day

  1. 2,149 Auctioneer Auction & Economy, Mail, and...
  2. 1,528 Altoholic Guild, Bags & Inventory, Mail...
  3. 448 Postal Mail
  4. 446 FuBar_MoneyFu FuBar
  5. 397 EasyMail from Cosmos Mail