Justin's Personal TODO List ======================================================================== DADA TO DO: ------------ Key: [ ] To-Do. [-] Working. [x] Done. [*] Naw... [?] Someday [ ] It would be great if the Send the Newest Archived Message to All New Subscribers in the Archive Options section would have a checkmark for sending the latest message to users that are added by the admin. [x] Moving to new-style tags [x] all the list subscription confirmation tags - eek! [x] message body - eek eek! [ ] How about a, "Download" subscribers button?, instead of, "Open it in a new window!" Wouldn't that be easier? [ ] Clickthrough Tracker - track UNIQUE opens. How? [ ] 1. Installation on my own machine running MacOS X (Leopard) with MySQL 5.1 was fairly straightforward, but when I installed it on my ISP's server which runs a back-level version of Mysql (4.I) I had to reduce the string lengths from 320 to 255 to get it to accept the SQL. Also had to change the CREATE INDEX statements to ALTER DATABASE... ADD INDEX... statements as I got a "Not authorized" error on the CREATE statements, but I expect that's just my ISP. Not sure if reducing the string lengths will have any significant effect, haven't noticed any so far. [x] Erm, I left a note - I'm not sure if I want to hassle around with this... [x]2. The migration tool worked fine, but had to use it without instructions as the link to the documentation page gives me a "Forbidden" error. It's pretty much self-explantatory though so wasn't a problem. [x] 4. Profile Fields which begin with an underscore are showing on public pages, where they should be hidden. [ ] 5. In the HTML Message template, the is getting wrapped with
...
tags which are spoiling my footing layout. This doesn't happen with 3.0.x. [ ] I've removed the line actually wraps lines in paragraphs and removed the option in HTML::FromText that says, "hey treat things as lines" - although the, "hey treat these as paragraph oriented" was also enabled... I may have to revert this problem. [ ] Hey, that seemed to have worked! ------------- [ ] List Owner Confirmed subscriptions What do I have to do for this? [ ] New List subtupe 'sub_request'? [ ] New thingy in the subscription process, AFTER (or in?) the subscription process that goes "Hey not so fast, bub, we still now need to confirm this subscription with the list owner - cause this list be CLOSED! [ ] New interface in the list admin control panel to confirm/deny a subscripiton Seperate than the other "View" Screens, since there's a different interface going on... [ ] If it's confirmed/denied, a new email message has to be sent out! Agh! Probably not as a mass-mailing - one at a time? [ ] Anything else? [x] List Invite not working? If I try to do a list invite (and follow the confirmation link), it tells me that the pin is valid, but I didn't first ask for a confirmation. Weird! And then, when I go through the confirmation process, the password sent to the address doesn't work. When I look and see what's up in the DB all the fields are NULL except, "email". Strange?! [x] I was using the wrong API in the code - this effects the master branch as well. Hopefully, when we merge, the problem will magically, "go away" (fix in this branch) [-] CKeditor To replace, FCKeditor" I just haven't done it, yet. Looks actually *simpler* than FCKeditor, but things like docs do need to be updated. -- Here's some issues: No File Upload! It's currently a $59 add-on. Boo! -- Some tricky bits to remember: There's a check for a, "blank" message - which is actually the default HTML skeleton that FCKeditor makes, this'll have to be tweaked. There's also the code for editing an archived message. That'll also have to be tweaked. Probably. [-] No tweak necessary? CKEditor actually returns a blank form field, if you didn't type anything. Yay CKeditor! -- Other than that, it may behoove us to be able to run both FCKeditor and CKeditor at the same time, if needed...? [x] Fancification w/Scriptalicious I'm less interested in fancy-ness, but more into all the fanciness being the same, for everything There's not much I want to do, except the, "partial sending" stuff and the, "SMPT test" stuff [x] Maybe do all the +/- boxes, but that could be a lot of recoding, if not done right! :) It's been done, but I haven't tested it with anything except my own stuff... [x] Admin menu. rearrange stuff. [x] Make sure to double-check these changes with everyone. [x] my changes are in the .dada_config file. Move over to Config.pm and example .dada_config's [ ] Double-check the changes with myself! [x] I think I gave the mailing monitor the ability to see multiple mailing lists' status, but the links don't all work, and that gets confusing... [x] I need to perhaps make an option to that you cannot edit profile info, if you're not Dada Root. (no option, just... YOU CAN'T.) [x] Or make it clear that editing the information will deal with all lists. and/or have a way to know that a subscriber is on more than one list (and perhaps which lists?) (or a way to see a "public" profile? (turn on/off) [-] I need some basic form validation for the Subscriber Profile Fields. Right now, all I have is length. The SQL stuff is properly quoted... What else?! [x] I need to change all instances of, "Subscriber Fields" to, "Subscriber Profile Fields" [x] I need to make that SQL table upgrade thingy Something like: DETECT if there may be a problem. Test test test. (first get the prev. profile fields + email address) # HEY! Is there a way to do this just in SQL (find columns, EXCEPT @list_of_columns) INSERT INTO TestTable (FirstName, LastName) SELECT email, @profile_fields FROM Person.Contact WHERE EmailPromotion = 2 foreach(@profile_fields){ DELETE COLUMN from that_first_table } [x] I need to write up all these changes [x] Sigh. [ ] perhaps make a note about global unsubs in the profile? [x] You need to change the profile fields when they're listed_like_this, to be Listed Like This! [-] Subscriber Profile Fields widget - is it in places where we don't want it? [ ] Some more live testing... [x] UTF-8 stuff - revisit? What else needs to be done? Tests? Caching? Information in? How do we handle it? # I'm almost at the point of saying, "Hey, it's good enough for now, # but I need some more feedback! [x] And, that's exactly what I've done [x] Upgrade Script - what needs to be done for that to be a reality? (List of stuff) [x] SQL: Creation of new tables [x] SQL: changing of schema, for dada_subscribers table [x] Is... that it? [x] A "delete" profile function? What happens to the subscriptions? [ ]A master, "Unsubscribe me AND delete this profile" Thingy? [x] Prototype stuff? Should that be folded in? It does solve a few bugs... [x] Did I break the semi-auto stuff? [x] Yes you did, but you fixed it [?] It would be nice if the partial fields could support some sort of dynamic content, like today's date, etc. [ ] Auto Clickthrough tracking of links in the clickthrough tracker. (oh, boy) [ ] What does this entail? Is there an (optional) CPAN module that could find all links, and change them? Probably just: HTML::LinkExtor http://search.cpan.org/~gaas/HTML-Parser-3.61/lib/HTML/LinkExtor.pm http://docstore.mik.ua/orelly/perl/cookbook/ch20_04.htm (Could be an optional feature, make enough tests that make me happy, and just take a chance...?) [ ] It looks like the CPAN module is installable via the, "Perl Modules" feature in cPanel. That's good... http://dadamailproject.com/support/boards/viewtopic.php?f=14&t=1491&p=5401#p5401 What about plaintext ver? Do we than just look for things that look like URLs and auto-redirect-ify them? What about URLS in HTML messages, that are actually to be viewed? Do I care? Or, is there a way to *just* replace URL's in tags> [x] I need to merge all of the code that creates the query for the Subscriber Profile Fields into ONE method, because it's getting complicated, it's being used in more than one place, AND people want to change it. A tall order, but probably, well worth it! [-] The, "Your subscriptions" thingy in the Profile thingy has to let you know, if you aren't actually subscribed to any lists. Right now, if you're not, it just looks broken. [ ] It would also be nice, that if you were the List Owner of a List, you'd also be listed as that. Special things, like that. Sigh. [x] Need a way to update an email address from the profile, and perhaps auto-merge, if the email address is already subscribed to an address. (it should probably be warned if this happens...) [x] Once the above are done, I need some major testing stuff to be made and then, we gotta wrap this up - probably make the 3.0.x to 3.1 script and call it a beta! [x] Some things to remember - the SQL needs new tables AND info has to be moved from one table to another.... sigh. [ ] Man, wouldn't it be nice to have an installer...? Sigh. [x] I need to make upgrade notes from Simple Scripts installs. [ ] The docs need to be clearer about how to work with HTML templates, and the like, [ ] double check bug fixes from 3.0.x are in 3.1.x... (3.1) [x] I need to make an option to says, "Hey that need Subscriber Profile Fields info? Replace what my be there with, THIS, or, use what's there, if there's already something there, Probably per import, for now, [x] Gravatar bells and whistles in the profile screen [ ] CAPTCHA for, "hey, you've already *asked* for this damn subscription! screen - the check at the moment is too simple. [ ] Remember to move over any changes from 3.0.x to 3.1in POD docs... [x] Magic Subscription Forms - a way to turn *off*?! [x] I need to HTML-ify the list description in the profile screen. [x] I need a purge button for subscribers. [x] Currently, the following sites will be notified: is not listing anything... [ ] It would be nice to have an option that says, "Hey, that email template? Why don't we see it initially in the, "Send a Message" scrren - so, if I want to tweak it slightly - I can. The problem is, what if someone totally obliterates the, unsub info, thinking that the email template was going to be applied? Perhaps just a warning at the top, "The email template is plopped down below and won't be applied again" [ ] I'd also have to make a really really really good check, to make sure that, if there's nothing extra type, the email template isn't used. [x] Need option to turn FCKEditor off list-by-list - what if for some reason it's not working? Broken Dada Mail. [x] MIME-Tools require ver 5.8 of Perl, which I'm fine with, but we're still saying we ship needing only 5.6. MIME-Tools is having a hissy fit with IO:: stuff - so I may just ship with an older version of MIME-Tools, to get around that problem - I'll leave, MIME-Tools in DadaMail.pm, but I'll just ship with the older version (5.420) Send a Webpage: Give options on what to do with Javascript, Stylesheets: change links to embed Remove (or, if it's not too hard) Leave alone, thank you very much Also, sputter back any errors found, hooking into the MIME::Lite::HTML stuff I'll probably have to make my own parse method. Sigh. And include_js method. Stupid. Also: http://rt.cpan.org/Public/Bug/Display.html?id=36005 ======================================================================== [x] "You may only change the Subscriber Profile Fields if you are logged in to an existing list using the Dada Mail Root Password." [x] "Use underscores, instead of spaces - no funny characters, and use lower case characters instead of uppercase. ======================================================================== Make the attachment limit somewhat flexible? Check in FCKeditor_default_value_widget.tmpl Perhaps fill in with a similar default value that FCKeditor uses, but all on one line? Will that work Have the DADA::App::FormatMessages::pre_process_msg_strings() subroutine know about the default_value that can be user-setable. Wooosh! (and that way, also, Beatitude can use this default value, yeah!) I have to update the perllib stuff, including: MIME::Parser Time Date Schedules do not get deleted, when a list gets deleted, which means, if you create new list with the same shortname, the old schedules will magically work again. Gotta update LWP - perhaps have it not "live" by default. I probably have to... I forgot :) This is more of a scratchpad, than anything else. 3.1 Change the Clickthrough Tracker to change all the URL's found to Click trackable: http://search.cpan.org/~bdfoy/HTML-SimpleLinkExtor/lib/SimpleLinkExtor.pm 3.0 [x] Probably take the send_email, send_url_email and possibly list_invite and put them into their own modules, ala DADA::App::Subscriptions, so I can call them in other modules (or, whatever) and also have it WAY easier to test with. Although, I do see where this is all going - I'm haphazardly reinventing CGI::Application. Hopefully, this'll just get the code *ready* fro CGI::Application, and I just don't keep writing silly modules, like this. But, yeah, it would *really* be nice for testing purposes... [ ] Something has to be done about error messages in the multiple subscribe script. Perhaps have a little ajax window with the error message (the same one you see in the, "there's seems to be a problem, but without the header/footer) when you click a, "Huh?" button, or something. I hates me that extension. [ ] It would be really nice to make my own include type for HTML::Template, powered simply by filters - the catch is that I want to be able to pass variables, so the tag would look something like: and the filter just looks for: And variables are parsed via: my $str = $1; my @vars = split(\s+, $str); my %named_vars; foreach(@vars){ my ($name, $value) = split(':', $_); $value =~ s/^\"|\"$//; } And then pass the vars to HTML::Template (again!) and replace the tag with what that's returned with. I'm assuming you understand how bug-ridden the above is and would not attempt to do copy/paste this. [+] Damn it: http://osdir.com/ml/lang.perl.modules.html-template/2006-12/msg00004.html [x] Probably make a module named something like, HTML::Template::MyExpr and make that like, one little change. Sigh. [x] Perhaps have two mail settings- one for mass mailings, one for everything else. # (Would make things that need to be sent, sent FAST!) [*] Talk to the reCAPTCHA CPAN guy and get 'em to distribute a Pure-Perl compatible version of his module (shouldn't be hard) [+] Talkin': http://rt.cpan.org/Public/Bug/Display.html?id=31740 [+] Meh, it ain't goin anywhere, the PP version Really really needs to be rewritten, because it sucks! [ ] Get rid of DADA::Template::HTML, since it's stupid and horribly written and being superceded by DADA::Template::Widgets anyways [ ] Add a, "wrap" paramater to DADA::Template::Widgets::screen, so that you can do the things DADA::Template::HTML does, but do it better [ ] Get rid of that option to have