![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Branch: refs/heads/develop
Home: https://github.com/dreamwidth/dw-free
Commit: 38ce1f726ac2ecb40dc16529128d8dbb74e8e302
https://github.com/dreamwidth/dw-free/commit/38ce1f726ac2ecb40dc16529128d8dbb74e8e302
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M bin/upgrading/update-db-general.pl
M cgi-bin/LJ/DB.pm
Log Message:
-----------
(Bug 215) Add database table for vgift transactions.
This is the last remaining table from the initial database design, which was
drafted in 2009 but not needed until now. Some properties of the transactions
are stored in the purchase cart instead of the transaction record; I didn't
want to duplicate information, but we may want to revisit this later.
Because this is a clustered table, it is added to the list in @LJ::USER_TABLES.
There is already a key for vgifts in alloc_user_counter, so we just change it
to use the correct columns from the new table.
Commit: 428b6bf206b86f17693e93f994658b387c8ddb3a
https://github.com/dreamwidth/dw-free/commit/428b6bf206b86f17693e93f994658b387c8ddb3a
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M cgi-bin/DW/VirtualGift.pm
Log Message:
-----------
(Bug 215) Strip trailing whitespace in separate commit, for clarity.
Commit: 0adfd1f5a13d2bb035d80c360543a75ec7c159db
https://github.com/dreamwidth/dw-free/commit/0adfd1f5a13d2bb035d80c360543a75ec7c159db
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M cgi-bin/DW/VirtualGift.pm
A cgi-bin/DW/VirtualGiftTransaction.pm
Log Message:
-----------
(Bug 215) DW::VirtualGiftTransaction - methods for working with transaction data.
This was originally implemented in the context of DW::VirtualGift, but
as the project evolved, it was clear these would better be handled as
methods on a new kind of object representing a single vgift transaction.
Several rounds of tweaking have been incorporated into this one patch.
If anything described seems to be missing, it should show up later.
The FIXME lines in particular will go away with the addition of another
new module defining a new shop item class.
Commit: d922b937a008ab6c56a40fa2300c36db543cf69d
https://github.com/dreamwidth/dw-free/commit/d922b937a008ab6c56a40fa2300c36db543cf69d
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M bin/upgrading/en.dat
M cgi-bin/DW/Shop.pm
A cgi-bin/DW/Shop/Item/VirtualGift.pm
M cgi-bin/DW/VirtualGiftTransaction.pm
Log Message:
-----------
(Bug 215) New module DW::Shop::Item::VirtualGift.
This is just the shop backend. I tested it using code like this:
my $cart = DW::Shop::Cart->new_cart;
my %opts = ( target_userid => $u->id, vgiftid => 15, anonymous => 1 );
my $item = DW::Shop::Item::VirtualGift->new( %opts );
$cart->add_item( $item );
$cart->state( $DW::Shop::STATE_PAID ); # creates transaction row
$item->apply or warn "did not apply"; # sets status to delivered
$cart->state( $DW::Shop::STATE_PROCESSED ); # housekeeping
Seemed to work OK; hopefully this means it will integrate seamlessly with the
shop engine when the time comes. I left in a FIXME to remind me to check and
make sure name_text/name_html do what I expect in context later, and to fire
a notification when the gift is delivered.
I also changed DW::Shop to use LJ::ModuleLoader instead of having to write out
each individual subclass of DW::Shop::Item and keep it updated.
Commit: 9e3a057c498ad2b7462436e16f851eee2ec54647
https://github.com/dreamwidth/dw-free/commit/9e3a057c498ad2b7462436e16f851eee2ec54647
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M bin/upgrading/en.dat
M cgi-bin/DW/Shop/Item/VirtualGift.pm
M cgi-bin/DW/VirtualGiftTransaction.pm
A cgi-bin/LJ/Event/VgiftDelivered.pm
M cgi-bin/LJ/Global/Defaults.pm
M cgi-bin/LJ/NotificationInbox.pm
M htdocs/manage/settings/index.bml
Log Message:
-----------
(Bug 215) New event for virtual gift delivery notification, LJ::Event::VgiftDelivered.
All the fun stuff that comes with ESN. This has primarily been tested via
/admin/eventoutput. The link on /manage/settings should maybe not go
live yet, as it's mostly just for testing at this point.
Commit: 6e0a656c500476118f6e753490acff5e51264a9a
https://github.com/dreamwidth/dw-free/commit/6e0a656c500476118f6e753490acff5e51264a9a
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M cgi-bin/DW/Shop/Cart.pm
M cgi-bin/DW/Shop/Item/VirtualGift.pm
M cgi-bin/LJ/User.pm
A t/vgift-trans.t
Log Message:
-----------
(Bug 215) Add vgift-trans.t for testing transaction methods.
Writing a test seems so easy on the surface... until running it
turns up all sorts of weird bugs in the code... some of them
I was able to fix and others I just had to work around.
Commit: 4a66ec94762d61d717b7bd04420ad3362b4756f6
https://github.com/dreamwidth/dw-free/commit/4a66ec94762d61d717b7bd04420ad3362b4756f6
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M cgi-bin/DW/VirtualGiftTransaction.pm
Log Message:
-----------
(Bug 215) Add methods related to viewing transactions on profile pages.
Not strictly backend, but defining here for convenience.
There is a new transaction URL method which resolves to
http://$username.dreamwidth.org/vgifts/$transid, but that
will 404 until the new controller is ready.
Commit: b81e166ae8f229cd4546aac14eb39066ec1dc30b
https://github.com/dreamwidth/dw-free/commit/b81e166ae8f229cd4546aac14eb39066ec1dc30b
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-17 (Wed, 17 Jul 2013)
Changed paths:
M cgi-bin/DW/Shop/Item/VirtualGift.pm
M cgi-bin/DW/VirtualGiftTransaction.pm
M cgi-bin/LJ/Event/VgiftDelivered.pm
Log Message:
-----------
(Bug 215) Requested code style tweaks.
Commit: c0c9a0401e8d788902ae27ce1d6e62f2aa1adf16
https://github.com/dreamwidth/dw-free/commit/c0c9a0401e8d788902ae27ce1d6e62f2aa1adf16
Author: Afuna <afuna@users.noreply.github.com>
Date: 2014-03-20 (Thu, 20 Mar 2014)
Changed paths:
M bin/upgrading/en.dat
M bin/upgrading/update-db-general.pl
M cgi-bin/DW/Shop.pm
M cgi-bin/DW/Shop/Cart.pm
A cgi-bin/DW/Shop/Item/VirtualGift.pm
M cgi-bin/DW/VirtualGift.pm
A cgi-bin/DW/VirtualGiftTransaction.pm
M cgi-bin/LJ/DB.pm
A cgi-bin/LJ/Event/VgiftDelivered.pm
M cgi-bin/LJ/Global/Defaults.pm
M cgi-bin/LJ/NotificationInbox.pm
M cgi-bin/LJ/User.pm
M htdocs/manage/settings/index.bml
A t/vgift-trans.t
Log Message:
-----------
Merge pull request #496 from kareila/bug0215-submitted
Bug 215 - new backend bits for vgifts
Compare: https://github.com/dreamwidth/dw-free/compare/9f36fdbabf4b...c0c9a0401e8d
Home: https://github.com/dreamwidth/dw-free
Commit: 38ce1f726ac2ecb40dc16529128d8dbb74e8e302
https://github.com/dreamwidth/dw-free/commit/38ce1f726ac2ecb40dc16529128d8dbb74e8e302
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M bin/upgrading/update-db-general.pl
M cgi-bin/LJ/DB.pm
Log Message:
-----------
(Bug 215) Add database table for vgift transactions.
This is the last remaining table from the initial database design, which was
drafted in 2009 but not needed until now. Some properties of the transactions
are stored in the purchase cart instead of the transaction record; I didn't
want to duplicate information, but we may want to revisit this later.
Because this is a clustered table, it is added to the list in @LJ::USER_TABLES.
There is already a key for vgifts in alloc_user_counter, so we just change it
to use the correct columns from the new table.
Commit: 428b6bf206b86f17693e93f994658b387c8ddb3a
https://github.com/dreamwidth/dw-free/commit/428b6bf206b86f17693e93f994658b387c8ddb3a
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M cgi-bin/DW/VirtualGift.pm
Log Message:
-----------
(Bug 215) Strip trailing whitespace in separate commit, for clarity.
Commit: 0adfd1f5a13d2bb035d80c360543a75ec7c159db
https://github.com/dreamwidth/dw-free/commit/0adfd1f5a13d2bb035d80c360543a75ec7c159db
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M cgi-bin/DW/VirtualGift.pm
A cgi-bin/DW/VirtualGiftTransaction.pm
Log Message:
-----------
(Bug 215) DW::VirtualGiftTransaction - methods for working with transaction data.
This was originally implemented in the context of DW::VirtualGift, but
as the project evolved, it was clear these would better be handled as
methods on a new kind of object representing a single vgift transaction.
Several rounds of tweaking have been incorporated into this one patch.
If anything described seems to be missing, it should show up later.
The FIXME lines in particular will go away with the addition of another
new module defining a new shop item class.
Commit: d922b937a008ab6c56a40fa2300c36db543cf69d
https://github.com/dreamwidth/dw-free/commit/d922b937a008ab6c56a40fa2300c36db543cf69d
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M bin/upgrading/en.dat
M cgi-bin/DW/Shop.pm
A cgi-bin/DW/Shop/Item/VirtualGift.pm
M cgi-bin/DW/VirtualGiftTransaction.pm
Log Message:
-----------
(Bug 215) New module DW::Shop::Item::VirtualGift.
This is just the shop backend. I tested it using code like this:
my $cart = DW::Shop::Cart->new_cart;
my %opts = ( target_userid => $u->id, vgiftid => 15, anonymous => 1 );
my $item = DW::Shop::Item::VirtualGift->new( %opts );
$cart->add_item( $item );
$cart->state( $DW::Shop::STATE_PAID ); # creates transaction row
$item->apply or warn "did not apply"; # sets status to delivered
$cart->state( $DW::Shop::STATE_PROCESSED ); # housekeeping
Seemed to work OK; hopefully this means it will integrate seamlessly with the
shop engine when the time comes. I left in a FIXME to remind me to check and
make sure name_text/name_html do what I expect in context later, and to fire
a notification when the gift is delivered.
I also changed DW::Shop to use LJ::ModuleLoader instead of having to write out
each individual subclass of DW::Shop::Item and keep it updated.
Commit: 9e3a057c498ad2b7462436e16f851eee2ec54647
https://github.com/dreamwidth/dw-free/commit/9e3a057c498ad2b7462436e16f851eee2ec54647
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M bin/upgrading/en.dat
M cgi-bin/DW/Shop/Item/VirtualGift.pm
M cgi-bin/DW/VirtualGiftTransaction.pm
A cgi-bin/LJ/Event/VgiftDelivered.pm
M cgi-bin/LJ/Global/Defaults.pm
M cgi-bin/LJ/NotificationInbox.pm
M htdocs/manage/settings/index.bml
Log Message:
-----------
(Bug 215) New event for virtual gift delivery notification, LJ::Event::VgiftDelivered.
All the fun stuff that comes with ESN. This has primarily been tested via
/admin/eventoutput. The link on /manage/settings should maybe not go
live yet, as it's mostly just for testing at this point.
Commit: 6e0a656c500476118f6e753490acff5e51264a9a
https://github.com/dreamwidth/dw-free/commit/6e0a656c500476118f6e753490acff5e51264a9a
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M cgi-bin/DW/Shop/Cart.pm
M cgi-bin/DW/Shop/Item/VirtualGift.pm
M cgi-bin/LJ/User.pm
A t/vgift-trans.t
Log Message:
-----------
(Bug 215) Add vgift-trans.t for testing transaction methods.
Writing a test seems so easy on the surface... until running it
turns up all sorts of weird bugs in the code... some of them
I was able to fix and others I just had to work around.
Commit: 4a66ec94762d61d717b7bd04420ad3362b4756f6
https://github.com/dreamwidth/dw-free/commit/4a66ec94762d61d717b7bd04420ad3362b4756f6
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-10 (Wed, 10 Jul 2013)
Changed paths:
M cgi-bin/DW/VirtualGiftTransaction.pm
Log Message:
-----------
(Bug 215) Add methods related to viewing transactions on profile pages.
Not strictly backend, but defining here for convenience.
There is a new transaction URL method which resolves to
http://$username.dreamwidth.org/vgifts/$transid, but that
will 404 until the new controller is ready.
Commit: b81e166ae8f229cd4546aac14eb39066ec1dc30b
https://github.com/dreamwidth/dw-free/commit/b81e166ae8f229cd4546aac14eb39066ec1dc30b
Author: Kareila <kareila@dreamwidth.org>
Date: 2013-07-17 (Wed, 17 Jul 2013)
Changed paths:
M cgi-bin/DW/Shop/Item/VirtualGift.pm
M cgi-bin/DW/VirtualGiftTransaction.pm
M cgi-bin/LJ/Event/VgiftDelivered.pm
Log Message:
-----------
(Bug 215) Requested code style tweaks.
Commit: c0c9a0401e8d788902ae27ce1d6e62f2aa1adf16
https://github.com/dreamwidth/dw-free/commit/c0c9a0401e8d788902ae27ce1d6e62f2aa1adf16
Author: Afuna <afuna@users.noreply.github.com>
Date: 2014-03-20 (Thu, 20 Mar 2014)
Changed paths:
M bin/upgrading/en.dat
M bin/upgrading/update-db-general.pl
M cgi-bin/DW/Shop.pm
M cgi-bin/DW/Shop/Cart.pm
A cgi-bin/DW/Shop/Item/VirtualGift.pm
M cgi-bin/DW/VirtualGift.pm
A cgi-bin/DW/VirtualGiftTransaction.pm
M cgi-bin/LJ/DB.pm
A cgi-bin/LJ/Event/VgiftDelivered.pm
M cgi-bin/LJ/Global/Defaults.pm
M cgi-bin/LJ/NotificationInbox.pm
M cgi-bin/LJ/User.pm
M htdocs/manage/settings/index.bml
A t/vgift-trans.t
Log Message:
-----------
Merge pull request #496 from kareila/bug0215-submitted
Bug 215 - new backend bits for vgifts
Compare: https://github.com/dreamwidth/dw-free/compare/9f36fdbabf4b...c0c9a0401e8d