effective_orders-5.3.2

https://rubygems.org

effective_orders

quick gemspec

.gem

.gem metadata (gemspec)

.gemspec

id: 750349

number: 5.3.2

platform: ruby

spec_sha256: 7d16015028dc0b835ebcb21504e8cc8b9dd2a8236769b36b6731b14bdcc56e5a

sha256: 86fe5967f7b7a1eb5f7cf5f37b4a7d3d9415f2c1a64ff990f43a323d6d1ea3ee

created_at: 2024-05-13 08:25:12 UTC

updated_at: 2024-06-10 10:15:09 UTC

position: 98

version_data_entries_count: 140

uploaded_at: 2022-03-03 23:51:35 UTC

indexed: true

has_extensions:

extensions:

Gem size: 78.5 KB

Version Data Entries

Total: 140

Unpacked size: 242 KB

Full NameModeUIDGIDMtimeLinknameSizeSHA
app/assets/stylesheets/effective_orders/_order.scss100644001.18 KB1ecb1cdcc751692cd79fc0c9c8d44f585fe35b8287f6dcd58ec33179a6ab0a55
MIT-LICENSE100644001.04 KB3d4935a9bd3fe60d3bb5fe523274a276d92638bdaefb44efca84471e82cb7bd9
README.md1006440031.6 KBb5142fd609765133eee50411bbafd5fae409cff1f967f886afff1f017ae0b7e8
app/assets/config/effective_orders_manifest.js10064400123 Bytes62bd703eaddddaf1af49d3c9a92a9c4c0522e534ce2e61428396d595515651e5
app/assets/images/effective_orders/logo.png100644005.09 KBb02ed3724aae3fa92faeda9cab6896f6dfefafadf8ad54a83f7e5cdd2a5e496a
app/assets/images/effective_orders/stripe.png100644006.73 KB9bc1214dc1e5589f9ebc83c5a6af340f102b3667fb044f656bccfb3775bc3809
app/assets/javascripts/effective_orders.js10064400166 Bytes4d2c7f0e6fc222a427b964809465d61965aaa35e6c79a193a90d6d193cf01794
app/assets/javascripts/effective_orders/customers.js.coffee100644001.27 KB13128bd94b12ea6389aaaf93f03646f26709c10fe4269ccc7ba599c85751cab1
app/assets/javascripts/effective_orders/providers/moneris_checkout.js.coffee100644002.25 KB3301dc9b5261466defe0d81a5c2b682b6477460d28fc4eb0a3c54370666d8b25
app/assets/javascripts/effective_orders/providers/stripe.js.coffee100644002.11 KB09646496be518b146c0b650f784dee57d0a59f9a3f81ffa147cffda8edf0ff43
app/assets/javascripts/effective_orders/subscriptions.js.coffee100644003 KB316facd97d7a285a5f9605a691552ccf2c74948dd72cd26c91fb96dd4de214fe
app/assets/stylesheets/effective_orders.scss1006440067 Bytesf6ebd1fee376232ec716f40c586f3edafce0f71c263746f03762fd491e9e6bab
app/assets/stylesheets/effective_orders/_cart.scss1006440056 Bytesf712b7cf95b5ed504a01330a134d9028c9e8409f9184c8a62122b605d5b2e109
app/controllers/admin/customers_controller.rb10064400371 Bytes658d2e8829ff4bf530a58fc2b8d9c2d04bc2c029b6ca135081753c2b5c39c41f
app/controllers/admin/order_items_controller.rb10064400372 Bytes67bbcde8302154bbfc895018d58f41e287dae7eef5b8a28a944a196cf4f6cf0e
app/controllers/admin/orders_controller.rb100644005.25 KB655dcfe24334412f6a04feb4fa7598abfd52f0bb1033e27da5ba09c8bca13e88
app/controllers/effective/carts_controller.rb100644002.44 KBf2aa4fe7f367568cc8761804a8a7bbe0c585bc657e0a5ffd5ee081db016c9a11
app/controllers/effective/concerns/purchase.rb100644002.03 KBb104ec5567913eb7d8502f40e97f7719503620a1517571b275fe8ae8d4418c6d
app/controllers/effective/customers_controller.rb10064400745 Bytes13a0b71cd225457d4d14d1f8b7c16b3391dbcd9ef0fd72e99a5cc801a5a90446
app/controllers/effective/orders_controller.rb100644005.28 KBd38031811206520e1815797c538cc0db8388248156b148662891a58f2046f227
app/controllers/effective/providers/cheque.rb10064400561 Bytes9d5a39d5fcd07ae3d6f97343f1e99dd303c8286a60dd4355db49431a5dc161d0
app/controllers/effective/providers/free.rb10064400809 Bytesb09a1c7a6c47e0ddb55d08a4b483e3ab9e077edd1d5cdba54e41ef239e76618b
app/controllers/effective/providers/mark_as_paid.rb100644001.09 KBf6e0e536b688ad084dc7f9b099d1e399dfef597bd701a117652d9f6685233ffb
app/controllers/effective/providers/moneris.rb100644002.32 KB8963be4247a24c3a9b3ddd54cd2f33970ce565215c40b4ebd346b16afbfffd01
app/controllers/effective/providers/moneris_checkout.rb100644001.92 KB30697a78fa9901e4804f5a69515b3e484cb06b4f3a50b37e7f0457714f6a6d7d
app/controllers/effective/providers/paypal.rb100644001.06 KBa971d24e84152b3ced6a1c2991c1c9442ab23f381d5bd30dcf9918f2f28565bb
app/controllers/effective/providers/phone.rb10064400552 Bytesd819e147cbec0e45bea4fb2800acdc731afac4a0d8ae3e5ce33f4ede8023a08c
app/controllers/effective/providers/pretend.rb10064400616 Bytes04888a1a61895f9c3e01537554ed64bfd4f8bb7c04826078d6b07ed47af57a81
app/controllers/effective/providers/refund.rb10064400870 Bytes1683fe0db4bd6bb313e54d96842a34965f790d46ead96ebec557d54116bef2d4
app/controllers/effective/providers/stripe.rb100644002.19 KBfcc636243439bfbd0f045646b78ffa0c3e974fbbf3cef4028dd35386ce6cfb40
app/controllers/effective/subscripter_controller.rb10064400570 Bytes6da30fe92f284fade454046373bbcf11011f133ef28e15bc8dbca9b395f6e469
app/controllers/effective/webhooks_controller.rb100644004.02 KBce5d20a4630f54cf362343964f851712213f0d3adf60f56b7e1f5ccaf1d6484f
app/datatables/admin/effective_customers_datatable.rb10064400548 Bytes45369af112dc2ec2ca03bb6944bff178dff28f107bca7d385f250fd6deeb07a7
app/datatables/admin/effective_orders_datatable.rb100644002.93 KB0377f78bbee5e18301e4f57139ce34011139bbdcef3b774582c325439dfbdc3b
app/datatables/effective_orders_datatable.rb100644002.29 KBbffea26ef2e2fbfb675561be4207b37f96254c1a8f675aeb7bc7f5ec80acb897
app/helpers/effective_carts_helper.rb100644003.49 KB6854b66cf227bf4fc60a1ee131d3bbea194f949230011051992ad3a196bca8a2
app/helpers/effective_moneris_checkout_helper.rb100644002.22 KB9f81743dbd7452e5825a26b522a186cd8b0772ca1a5c887893df5d984b6da00c
app/helpers/effective_orders_helper.rb100644004.26 KB47e9a34aa668d89798b8e26d9b02e7cc5ae32ef2ecb477c15114359750103e33
app/helpers/effective_paypal_helper.rb100644002.03 KB0638c7e6d685f4ec0e61a6309dfd76a752419af4dc848f029e16715f746ef3d6
app/helpers/effective_stripe_helper.rb100644002.57 KBf261d45a608286f31abfe501a6672a318762c2e44bf0a9c70af4eb95f0c300dc
app/helpers/effective_subscriptions_helper.rb100644001.11 KB467938bb84e782ae8c18f85efe84e755965194eb9de50be46eca739cc96c8b59
app/mailers/effective/orders_mailer.rb100644009.55 KB0a0b7d58a2fd9182f37be1e023ec42cbfb6a45ab7f8c0057407975fe655d4067
app/models/concerns/acts_as_purchasable.rb100644003.56 KB1887beb41d70f533c993da994a80d1797967b9669e1105a0b84b3d02b2d3985f
app/models/concerns/acts_as_purchasable_parent.rb10064400901 Bytes5362660ca5e0e796b8fde82ddc3d7627be41a7f4f455270c51b47cef072bb9b8
app/models/concerns/acts_as_subscribable.rb100644002.83 KB4887287d58eb2430ac84614c322956755ed4ca5a693dfde3d8e20f67a830c162
app/models/concerns/acts_as_subscribable_buyer.rb100644001.63 KB573f01f813f86b0b8a4bd8a8879eec6ec618d66e4c88c6984c1553f9b48252ca
app/models/effective/cart.rb100644002.69 KB8b67644c6037f87620b412546b5d7a7099218e8735f5529d0d131943f0e0564b
app/models/effective/cart_item.rb10064400846 Bytes6312d204cbebacc782e7e6588f888777bea930ce4a21121789ff467a6fddd68a
app/models/effective/customer.rb100644002.79 KB07fce14ff214ad3395189b113a4358ee36008bf0b51eb826b3315c33b2d5ff37
app/models/effective/order.rb1006440023.6 KB57d2835d2543bc5446d5701890b9d1589e1f4801a1799bee67654021bcea953c
app/models/effective/order_item.rb100644002.02 KBf8f3db7ca00a4e224eb23933ca98f8eeee739af9a3c34462761ae81bcf1f3328
app/models/effective/product.rb10064400543 Bytes3e09e7a308a8aa0f7714f35b7af7c18db434bb88f32f5c1df63b826d3f6a1802
app/models/effective/sold_out_validator.rb10064400171 Bytesf842f935e57c7f08154275fc673bd7210d5b293145673b23cbe908c129675f41
app/models/effective/subscripter.rb100644005.6 KB342139e67f954c840e220cebcfc055134bb5b9006d3dabcfa9fe9214afd7a34f
app/models/effective/subscription.rb100644003.31 KBd315560a6add3e92e25f57dcca61fb11f923bbe724d5d73985037bfe0b1f0e34
app/models/effective/tax_rate_calculator.rb100644001.56 KB2fb1bb430d09ee6debdafa17ef184423fb0dabca1fb0a82cd93e805489ffa68c
app/views/admin/customers/_actions.html.haml10064400176 Bytesd1349ef9df1d2769d56bb8a0cd89e81a4bbd66c2602431604fa91a1e8b482c69
app/views/admin/customers/index.html.haml10064400247 Bytesb356938a42dad3359eecb1360c6e75d4aa4bae920e53c857928fa3a028d80af8
app/views/admin/customers/show.html.haml10064400308 Bytesda1918ff60e571e425f7dfa18f969f1222ee3d7dc745db948edd549b31193df3
app/views/admin/order_items/index.html.haml1006440073 Bytes63b105ab7b4024895495065b172a44a5fc3d6c38140576dfd699fe5f327a1e89
app/views/admin/orders/_datatable_actions.html.haml10064400956 Bytes5097b3a12b21c88115001266528ddd1c3fcf3e67e163e48a69a80f528fc744d2
app/views/admin/orders/_form.html.haml100644001.61 KB2ff970d4070849e04819576a5ca49b52764496d6aec78d0eb9bb19638e94c05a
app/views/admin/orders/_form_note_internal.html.haml10064400387 Bytes60c03ee988c0603ace0a97fbc969b00850b770b75185295eedf9aefbfefaf563
app/views/admin/orders/_order_actions.html.haml10064400310 Bytes90c85bb6710599fd78f96290d573395b1f81b460aa547751b0ffd04046231c96
app/views/admin/orders/_order_item_fields.html.haml10064400501 Bytes35fa811b9a241fd3a096393e6fd80ac19cca236caff5bb772748ef35693a2dae
app/views/admin/orders/checkout.html.haml10064400202 Bytesbd25a7e7db5cc5a0eea176f65871a6032240c9f30652d3c30bc61fcedcdcf9f0
app/views/admin/orders/edit.html.haml10064400184 Bytes1424e7cb108b31ded5cad38822ecf92e2849636573ab21ee3ee1e51b6f9cef14
app/views/admin/orders/index.html.haml10064400200 Bytesa7e77cfd9c527376c0c8a7d9347139d993d179e689f5253797110a40a0cbbc29
app/views/admin/orders/new.html.haml10064400113 Bytesf9deda6cbb3d821b3701949cbc9f58f9f3880d931285fd8a2da4c11bfaf6d8db
app/views/admin/orders/show.html.haml10064400191 Bytes23ab9c7f55a6832091a7ef0233dd31c104474f23d8629161f2f355eee65214bf
app/views/effective/carts/_cart.html.haml10064400672 Bytese191b83d59ee0029c30588e65c9c7f392412da931ac5cc8c240cf8e7f5c774a2
app/views/effective/carts/_cart_actions.html.haml1006440081 Bytesb375668d8bfaa7dbeee13363e7b181a2dce51d779c358cba75566345e3679bae
app/views/effective/carts/show.html.haml10064400520 Bytesafefe9c138a0817f82951b0312ed8acdb41c0e460d2b778c98a97846e38b0baa
app/views/effective/customers/_customer.html.haml100644002.28 KBfa180962e502bffde9624f98879a4b4e405630150c490c84d6af10220867c71c
app/views/effective/customers/_form.html.haml10064400772 Bytesd91a8072aab38f9dcc1f81a5a222a3213e40a2ba760d3c8a9ee6993e3da92b34
app/views/effective/customers/edit.html.haml10064400160 Bytes6a2df5eb1da099990dfc2d4d98e2434d5267c60673e3a7a3573f321da538a008
app/views/effective/customers/update.js.erb10064400333 Bytesb1527b1d7efc5ed65e997e6953f394438b1bd1a5a7567971568374708090939a
app/views/effective/orders/_checkout_actions.html.haml10064400230 Bytesf0f940c56441c7811adc0ae148dd73b1b72133474c825b9f108ce2e1e68d5841
app/views/effective/orders/_checkout_step1.html.haml10064400210 Bytes573a0ab05a803c32ec18824c378d927925fd7a0f034a4b686005b0c532776f89
app/views/effective/orders/_checkout_step2.html.haml100644001.87 KB401519599639ff97212ec5c1cfba41274b14699ce31728c64dec29c48673db03
app/views/effective/orders/_datatable_actions.html.haml10064400134 Bytes91e658c757626a640bc7c1d6a502814e493db898ba589cf722b178b082a16a6f
app/views/effective/orders/_fields.html.haml100644001.09 KBaf865629f02f7321650342758b38ca1c90dbdb02dbc93c539d1e3480d994030e
app/views/effective/orders/_fields_note.html.haml10064400234 Bytesc546da6461a07a169bce25f95ad9b08904e4609fcca5af8a867b80b1425068c4
app/views/effective/orders/_fields_terms.html.haml10064400340 Bytes52864ee71a163d1c999987fb0a8ea03dc0b64cf319d66353eb5ceb078efc3f27
app/views/effective/orders/_order.html.haml10064400686 Bytesf43991654d355366e993efd6f5e0ca4ca64c3487644c244f35e592accb5e1a90
app/views/effective/orders/_order_actions.html.haml10064400994 Bytesaf795526843b356b3ab814a42f7adc0ec62df16b43548b0a9dc039a91fff74a7
app/views/effective/orders/_order_deferred.html.haml10064400201 Bytes670e7076e76fa7eb08ad2d52265f2158a75a5c0cea1761ea726b40349347d7a3
app/views/effective/orders/_order_footer.html.haml10064400117 Bytes717666533137e80af1be31257273f143c78fd6e808e32787fd828666f66d9eca
app/views/effective/orders/_order_header.html.haml10064400162 Bytes22e0051359af11ca87bb64a176533272a6c3e257920598cbf25d8555501bcf76
app/views/effective/orders/_order_items.html.haml100644001.84 KBc8d7c5df044e4117afa29269b2c31fc922c55eadcc33953b3d1ca1bd0f37138d
app/views/effective/orders/_order_notes.html.haml10064400454 Bytes9d246358d15b16b28c59f0fe359200e24c352bfd2caa721efae09f1aa29f599b
app/views/effective/orders/_order_payment.html.haml10064400333 Bytes721d9f5155edc19349ffeb7a05d1b3de29e6c25eb4b458508fd1fef55f5f54ec
app/views/effective/orders/_order_shipping.html.haml10064400870 Bytes9e854628110a34d98775aace8e4bd6d29741c7147bab5193771b38a698478986
app/views/effective/orders/_orders_table.html.haml10064400611 Bytesa60561bbcfca6ca8d15a0a0d4bb641a1b0e77926415bf908a2cc81e1720758be
app/views/effective/orders/cheque/_form.html.haml10064400285 Bytes656a501ac5a1a2f7d9d5270e455747b3d366016734913c7100bce3729206a4fd
app/views/effective/orders/declined.html.haml10064400294 Bytesc06285fda260774edb94b070052a58fc29f8b52029e410c7cd6f961c00ca94e7
app/views/effective/orders/deferred.html.haml10064400370 Bytese3fbceeb2db8d43d76e56689424d34629aa36f12b32d83afa85e9df4845d1441
app/views/effective/orders/deferred/_form.html.haml10064400612 Bytesbec8524cb74c49192b015b30ad60ff36cf760250fcbb7c6771d074cbfdeb3e6b
app/views/effective/orders/edit.html.haml1006440068 Bytes68baffa08e6f49ce54b00c996332122f5267c297b5beb7e6bf0c6db470c94dad
app/views/effective/orders/free/_form.html.haml10064400285 Bytescc226eb08f4936cc907760ff0ec151f52bbf0b14cad8ead9df3d1706b18b8e4e
app/views/effective/orders/index.html.haml1006440067 Bytesbf1f8de8cb6843eec42f7ed1bef5fc8ab993f2fb9e0d134624ed24c17639dab5
app/views/effective/orders/mark_as_paid/_form.html.haml100644001.19 KB1d4d3e16f3c8612adaeef02a53e976818523ba175812d6b5708a630b5742f825
app/views/effective/orders/moneris/_form.html.haml100644002.35 KB5adc3bad5bdf04176db496ac17b66517d52682af21564b653f58f22c4b60d044
app/views/effective/orders/moneris_checkout/_element.html.haml10064400138 Bytes694794b905bed71b5ac3883c15624c83c5737d19f51670784eb4a1376d1c8d1b
app/views/effective/orders/moneris_checkout/_form.html.haml10064400839 Bytesd150fb3c69cc1689fa88763143eb158509ec68d82ea5e71f772ee57bcb35d47e
app/views/effective/orders/new.html.haml1006440068 Bytes68baffa08e6f49ce54b00c996332122f5267c297b5beb7e6bf0c6db470c94dad
app/views/effective/orders/paypal/_form.html.haml10064400267 Bytesb626117c11b6f1f693f340767b1acf05b1ce21c66ce7ec955ac37e77060604ea
app/views/effective/orders/phone/_form.html.haml10064400281 Bytes1049b519823ab02e0ab3c1e392c8d2d52af16b8cae2afff1961c091cc6d46b82
app/views/effective/orders/pretend/_form.html.haml10064400380 Bytesa7062bb48d2fcdfc6e57a0fef8429d2a724ee8709636144d3da3d0b364a858b8
app/views/effective/orders/purchased.html.haml10064400211 Bytes6ae83936a51b8c846dc83ee17565f5de66688534c5d61ae9ef34eabbdaeba403
app/views/effective/orders/refund/_form.html.haml10064400291 Bytesbdfc1065866f37c81e0e849be38ff479695ad6848b3509887d1c71c1f1ab4b7c
app/views/effective/orders/show.html.haml10064400244 Bytes48851016aa15900d7a867de497c5b135d7107374313a6f11c9a7c0567de7bd66
app/views/effective/orders/stripe/_element.html.haml10064400112 Bytes94f40f968a5dbfcad090a7288587efe0796dfb2bce592f370d33d84b6495d043
app/views/effective/orders/stripe/_form.html.haml100644001.11 KB77ed6dd31fe246acc1a67acf861548d3b79593e1e835e4063ed1d294ceb4a471
app/views/effective/orders_mailer/order_error.html.haml10064400251 Bytesd49bbd80f2af6fb3114c0e2526efbc8e95ed560feddbcd734a3b6f57dc1dec8d
app/views/effective/orders_mailer/order_receipt_to_admin.html.haml10064400116 Bytes79f7869d2b9bd0fdcab7f03b1fdd48b8c50ab054d05e541c3e92139429c64eab
app/views/effective/orders_mailer/order_receipt_to_buyer.html.haml10064400118 Bytes9eff5dbcaed847dbf4fdfbfb1241f720ff0b6504a6854c7eb5f2041aab3a5ea7
app/views/effective/orders_mailer/payment_request_to_buyer.html.haml10064400475 Bytesa71f41d21aed6024658e4a94a6871f225a4267469f4c6f546b3d84735c5d1c0e
app/views/effective/orders_mailer/pending_order_invoice_to_buyer.html.haml10064400431 Bytes4a70f88702090e6110151cc4d939181a52f1060aed5c2ef7b7bbc3935ea2f606
app/views/effective/orders_mailer/refund_notification_to_admin.html.haml10064400312 Bytesa704b3a92dcbbf7e54a717549420677ab2aff721bb8cbab8bacf160494a11408
app/views/effective/orders_mailer/subscription_canceled.html.haml10064400326 Bytes4be1b9c0e854c65ac2feff126b4118df6e2ac9d2f3d8a50c23c1c6e4f5bdb622
app/views/effective/orders_mailer/subscription_created.html.haml10064400424 Bytes99ebb96444e9218f42b927ac23866e0c7b044dc8faef185a9b0c2db3311fd3da
app/views/effective/orders_mailer/subscription_event_to_admin.html.haml10064400372 Bytesb866f08e8f90d600c0708ba93e3ff88ac1ea30b7252a0421348ff515243dc381
app/views/effective/orders_mailer/subscription_payment_failed.html.haml10064400368 Bytes6e5a95c6384c62c4e8d07807d35bdf50d63f615aa480c863317d43229e236f03
app/views/effective/orders_mailer/subscription_payment_succeeded.html.haml10064400327 Bytes70bb6c6e6edeb4e13e5edc19178aac5eb3ee54f0db97289bdbda07a36358c1a0
app/views/effective/orders_mailer/subscription_trial_expired.html.haml10064400169 Bytes1e6fe4b103618fe97379cde41c7b6945ccf67ee209a4431e100f0b07373a1971
app/views/effective/orders_mailer/subscription_trialing.html.haml10064400237 Bytese0d8f2d19b020cfe71dd15829942da357dd676a279b159e343ef5ee9111f7a89
app/views/effective/orders_mailer/subscription_updated.html.haml10064400427 Bytes76ab0d84c41b187dff119063fe516e3ba7db92a09427127f9b578bb28b9dc924
app/views/effective/subscripter/_form.html.haml100644002.39 KBcb145ab47e06e5295134f0c246a6c225a659122cb34982ea5c55f804faed1a09
app/views/effective/subscripter/_plan.html.haml10064400869 Bytes48d16942bea4fdd6ea4354d4e0727ea960595dba4f899fcd222ad2b84682fda8
app/views/layouts/effective_orders_mailer_layout.html.haml100644001.04 KB0f2dd1ee2c966e152b8d6da5ac5fcef184d3ee03504674d13fa9761ccb02b0d8
config/effective_orders.rb1006440010 KB1f1db3e09cbd75ebf4dc1b11d127bf0de9fbb023a86e2e883769457084a31a94
config/routes.rb100644001.82 KB9297dc45070fbd79105f31c2c2938dcd78deb1088b288152c5c463624b64edff
db/migrate/01_create_effective_orders.rb.erb100644003.46 KBbfde388af2b5882edcb1d129c424897a7384a6415f6d1e4081e591f361254cae
lib/effective_orders.rb100644007 KBade1da6622aa5e6cbe56987b798a0ec02ad1fc47f5b1ab1129a207be07b067da
lib/effective_orders/engine.rb100644001.92 KBd86e6fb6f88e03ffe0f82d3a8dbea922c828a741d8902de2bae1b624f32402a1
lib/effective_orders/version.rb1006440054 Bytes47ba98ba2f0712fa6ddfd470fead78bf5a1d01ace1ef2f7b008f670de2e32214
lib/generators/effective_orders/install_generator.rb100644002.33 KB9edd979b3dd5c33c94b2ec6578b11e33a5e58b8c97f783e4e9fb6911d39bccbd
lib/generators/templates/effective_orders_mailer_preview.rb100644003.93 KB4689f6871d8fa03cb4ebe2ddbd1baca0882e444cac148e932b33b86189f84c3e
lib/tasks/effective_orders_tasks.rake100644002.72 KBd06245fc5632211eadebdbba53bffd8458bc675e76e54db12022e2373f0eb2fd