Zen Cartポイントモジュールアドバンスv120

ポイントモジュールアドバンスのアップデートを行いました。
内容は下記。
※※ 2009/10/20アップデート+バグフィックス(v120) ※※
機能追加によりマイナーバージョン番号をアップしました。
□新機能
・多通貨に対応しました。これに伴いポイント表示系の関数を刷新。
これまでも多言語には対応していましたが、複数の通貨を採用したショップにおいて
(例えばUSD)で100ドル未満の商品に対してポイント付与率が1%の場合、ポイントが付与されないという問題がありました。
今回の機能追加で、複数の通貨を採用していても円の場合とほぼ同じだけのポイントが付与されるようになりました。
「ほぼ」というのは、為替レートによって購入額に応じた比率での付与なので為替レート分差が生じます。
あくまでも購入額に対するポイント付与率での計算としています。
・ポイント利用時の最大ポイント利用数制限の拡張 thx Miss Yamane
最大利用ポイント数の設定値を「空欄」とすることで最大利用数を保有ポイント数と同一にします。
□バグ修正
・edit_ordersにおいて注文修正画面でのステータス変更時に意図しないポイント確定が発生するバグの修正。
・ポイント含むセール設定画面でセールの追加が出来なくなった問題の対処
最新のセキュリティパッチの導入によって上記問題が発生していました。
(フォーム生成をデフォルト関数で行う形に変更)
■ポイント有効期限チェックについて
□新たに管理者ログイン時に自動チェックする方式を加えました。全部で4種類です。
・管理者ログイン時
・ユーザーログイン時
・手動
・cron
ユーザーログインのみ負荷も考慮して該当するユーザーのみに関してチェックします。
その他は全ユーザーチェックです。
□cron利用について説明とファイル追加 合わせて既存のpoints_expiration_method.phpを手動時のみ利用するよう変更
・cron利用 及びコマンドラインでのphp利用が可能であることが前提
・cron用ファイルはZen Cartのインストールパスを利用環境に合わせて記述することが必要
・cron用ファイルはインストールパス以下であればどこに設置しても稼動します。念のためファイル名のリネームか.htaccessで制限をかけることをお勧めします。
※ただし、extra_function等の事前にロードするディレクトリには不可。adminログイン画面が表示されなくなります。
ご利用いただいている方は下記URLから入手後適用してください。
http://www.a-akinai.com/modules/zox/index.php?main_page=product_free_shipping_info&products_id=10

Zen Cart ポイントモジュールアドバンス アップデート v117

ポイントモジュールアドバンスのバグ修正を行いました。v1.1.7となります。
この修正で1.3.8aへの対応も1.3.0系用に追随しました。
*利用ポイントがある受注をキャンセルした場合、同一ユーザーの以降の新規受注時にキャンセルしたはずの利用ポイントが保有ポイントから減算されるバグの修正。
*カテゴリごとのポイント設定、商品ごとのポイント設定の処理の一部修正。
*edit_orders-JPのステータス変更時のメール送信フラグの表示を修正。
差分は下記より入手してください。
※差分のzipファイルはパスワード制限をかけてあります。ご購入者に以前ご連絡してあるものと同一です。
ポイントモジュールアドバンス差分
なお1.3.8a用にはv113より後のアップデートが含まれています。
*CSVコントローラ(注文情報出力コンポーネント)をポイントモジュールアドバンス対応化するための変更。
*保有ポイントを全て利用した場合、その利用した受注を確定するまで保有ポイントにマイナスの値が表示される現象の改善。
*ある条件下で取得ポイントが0になってしまう現象の修正。
*配送先と請求先が異なる注文をすると同じユーザーが重複されて表示される現象の修正。
*ポイント発行でマイナスポイントを発行した場合の処理が正しくないバグの修正。
*ポイント修正Tipsファイルの表示。
*管理画面から言語を削除した場合に、ポイントモジュールアドバンスで追加したテーブルからも同一言語IDを持つデータ行を削除するように変更。
ご迷惑をおかけして申し訳ございませんがアップデートをお願いいたします。

Zen Cart ポイントモジュールアドバンス バグフィックス v116

ポイントモジュールアドバンスのバグ修正を行いました。v1.1.6となります。
・ある条件下で取得ポイントが0になってしまう現象の修正
・配送先と請求先が異なる注文をすると同じユーザーが重複されて表示される現象の修正
・v115で追加した言語の定数定義のミスの修正
差分は下記より入手してください。
※差分のzipファイルはパスワード制限をかけてあります。ご購入者に以前ご連絡してあるものと同一です。
えぇ商いどっと混む
カートでのポイント利用時の挙動全般に影響しますので必ず適用してください。

Zen Cart ポイントモジュールアドバンス バグフィックス v115

ポイントモジュールアドバンスのバグ修正と、一部機能追加を行いました。
ポイント履歴修正
ポイント履歴修正Tips
・顧客別にポイントを発行する際、修正用にマイナスポイントを発行すると正しく処理されないバグの修正。
・ポイント修正のTipsファイルを管理画面>ポイント履歴画面から閲覧できるように変更。
この修正は1.3.0系用のみ用意完了しました。
1.3.8a用は追って対応します。
差分の入手はえぇ商いどっと混む 商品ページ
ファイルにはパスワードをかけてあります。
パスワードはご購入者様には通知済みですが、紛失された方等はご連絡ください。
//////////////////////////////////////////////////////////////////////////
Zen Cartでのサイト構築、モジュール開発、カスタマイズなどお気軽にご相談ください。
オフィスあんどぷらす http://www.andplus.net/
えぇ商いどっと混む http://www.a-akinai.com/
人気ブログランキング 人気blogランキング にほんブログ村 企業ブログ 情報通信業へ
//////////////////////////////////////////////////////////////////////////

Zen Cart ポイントモジュールアドバンス バグフィックス v112

ポイントモジュールアドバンスのバグフィックスを行いました。
内容は以下のとおりです。
※※ 2008/12/14バグフィックス ※※
・顧客別管理ページで顧客の検索でエラーが出るバグの修正
・商品別ポイント設定画面でhtmlエディタが利用できないバグの修正
・ポイントイベントで還元率設定した場合、受注データで二重に還元率処理が行われるバグの修正
・管理エリアの一部のページでタグの生成抜けがあった問題の修正
今回から差分ファイルの提供方法をサイトから注文+ダウンロードしていただく方式としました。
(有料モジュールのみ)
ダウンロードしていただくZIPファイルにはパスワード制限をしてあります。
パスワードは、対象モジュールをご購入いただいた方にお知らせ済みです。
万が一パスワードをお忘れ、紛失された場合はご連絡ください。

Zen Cart ポイントモジュールアドバンス バグフィックス

チェックアウト画面をリロードするとDBへのデータ挿入が重複エラーとなる件。
リロード時に該当データが存在しない場合のみ処理する方向で修正。
あわせて、edit_orders-JPの機能拡張も適用。

ポイントモジュールアドバンス Zen Cart1.3.8a対応

ポイントモジュールアドバンスをZen Cart1.3.8aに対応しました。
仮名フィールドをaddress_bookのものを参照するように書き替えました。
また、同梱のedit_orders-JPの修正画面にある支払い方法のプルダウン用データを自動で取得するように変更しました。
これは単体の注文修正モジュールedit_orders-JPにも適用済みです。
上記修正をZen Cart1.3.8a用だけでなく1.3.0系用のものにも適用しました。

ポイントモジュールアドバンス Zen Cart対応バージョン その2

1.3.8aではcustomersテーブルの仮名フィールドは元々無いんですが、フィールドを追加する形でポイントモジュールアドバンスを動くようにしました。
でもやっぱり良くないかもしれないなと思いなおし、他のテーブルの仮名フィールドを使うように作り変えてます。
公式版(1.3.0系)は仮名情報を下記のテーブルに持っています。
顧客テーブル(customers)
住所テーブル(address_book)
受注テーブル(orders)
対して1.3.8aは下記。
住所テーブル(address_book)
受注テーブル(orders)
Zen Cartは「注文者」「配送先」「請求先」と3つの住所データを扱います。
顧客情報を含んで5つまでこれらが設定でき、「配送先」と「請求先」に指定できます。
受注データには「注文者」「配送先」「請求先」が入ることになります。
ここで実際に参照するデータはどこにあるのかというと、
「注文者」 -> 顧客テーブル(customers)、住所テーブル(address_book)、ゾーンと国(割愛)
「配送先」 -> 住所テーブル(address_book)、ゾーンと国(割愛)
「請求先」 -> 住所テーブル(address_book)、ゾーンと国(割愛)
になります。
つまり、どの住所データも「住所テーブル」を参照しています。
それで仮名情報を住所テーブルのみに絞って持たせたのが1.3.8aということになります。
当初仮名情報は顧客データに持たせるのが一般的じゃないのか?と思っていたのですが、こうしてみると住所テーブルのみでも良いのかと。
元をただすと「注文者」の情報で住所テーブルを参照するのが、もっと遡ると顧客情報と住所情報で重複したデータ(登録者の情報)を保持することがよろしくないんじゃ?とも思ったりします。
とはいえ、公式としてリリースしているバージョンのDB構成を踏襲しないのは個人的には好みじゃありません。
ここには戦略的な意図が見え隠れする気がします。
EC-CUBEとかP1エミュレータのような図式も見えます。
(私の見方は完全な憶測だし穿ってますけどね)
何が言いたいのか分からなくなってきましたが、間口は広げないといけないので、ポイントモジュールアドバンスの1.3.8a正式対応のためにもうちょっとハックしますよという告知でした。

Zen Cart1.3.8a対応モジュール

edit_orders-JP ならびに ポイントモジュールアドバンス の1.3.8a対応版をリリースしました。
1.3.0で存在していた顧客テーブルの仮名フィールドが1.3.8aではありません。
その為注文時にエラーが出ていました。
どう対処しようか迷いましたが、仮名フィールドの存在をチェックし、なければフィールドを追加するSQLを追記して対処してあります。(ポイントモジュールアドバンスにおいてこの対応をしてあります。)
これがベストの選択か否かはよく分かりませんが、急ぎ1.3.8a対応版をリリースしたかったので上記の形にしました。
1.3.0.2、1.3.0.3、1.3.8a、zox での動作を確認しました。
既に導入サイトもありますのでぜひとも採用していただきたいと思っています。
旧版はアイディアでポイントサービスをお手軽に実現するものとして支持いただきましたが、ファイル構成、実装の仕方等々で未熟さが目立ったものでした。
ポイントモジュールアドバンスはコアの上書きを一切しないで実装することも可能でしたが、利便性との天秤でいくつかのコアファイルを上書きしています。
次は会員ランクモジュールの刷新、関連商品モジュールの刷新を行う予定です。

ポイントモジュールアドバンス Zen Cart対応バージョン

ポイントモジュールアドバンスのZen Cart対応バージョンに関してです。
zen-cart-v1.3.0.2-l10n-jp-3用で開発しましたが現在 Zen Cart 1.3.8a(現段階の最新) での確認作業中です。
今のところ動作しているように見受けられます。(全モジュールファイルUTF-8に文字コード変換済み)
edit_orders-JPに関しても期待した動作を見せています。
ただ、一点のみ気になるのは1.3.0では存在しているテーブルのフィールド(仮名に関する2件)が1.3.8aでは存在していませんので本体インストール後、注文時にエラーが出ると思います。
(sqlを発行し上記2件のフィールドを追加してからのテストを行っています。)
1.3.8a用の他のモジュールとの整合はチェックしていませんがポイントモジュールアドバンスは1.3.8a対応ということで問題ないと思います。
他モジュールとの整合はその都度確認してください。
また、掲示板で寄せられていたedit_orders-JPの1.3.8aにおける不具合は現状開発環境では再現しません。この件に関しては引き続き調査しますので報告をお待ちください。
■1.3.8aに対するテスト環境
サーバOS: Windows NT 5.1 build 2600
PHP バージョン: 5.1.6 (Zendのバージョン: 2.1.0)
with eAccelerator v0.9.5-rc1, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
with Zend Debugger v5.2.12, Copyright (c) 1999-2007, by Zend Technologies
データベース: MySQL 5.0.24a-community-nt 文字コード UTF-8
HTTP サーバ: Apache/2.2.3 (Win32) DAV/2 mod_ssl/2.2.3 OpenSSL/0.9.8c mod_autoindex_color PHP/5.1.6