モレスキン 2010年手帳 パノラマダイアリー購入

9月に入って各社から来年のカレンダーが発表されてきた。
今年使っている「ほぼ日手帳」も2010年版が発売された。
2年目なので使い慣れた感はあるけど他に良い物がないかとこの時期は手帳のチェックが楽しい。

その中でもモレスキンの2010年手帳から新作に追加された「パノラマダイアリー」
縦開きが珍しくまた書きやすそうなので一度観てみたかった。

連休中に倉敷方面へ出かけた時に立ち寄ったロフト倉敷店(天満屋 倉敷店)と うさぎや 倉敷店どちらにも在庫がなかった

そんなことをtwitterでつぶやいたらロフトではマンスリースケジュールをおまけでもらえるということを教えて頂く。
また、在庫があることも教えて頂けたのでリベンジに日を改めて福山ロフトへ。

すると倉敷では無かったモレスキンの2010年手帳が多数あった。
サンプルも置かれているし、教えて頂いた通り「ロフト限定版」がある!
倉敷店のモレスキン取扱量が嘘のようでした 福山店。

こうして手に入れた「モレスキン(モールスキン)/MOLESKINE/2010年版 パノラマダイアリー」を写真を交えて特徴的な部分を紹介。

モレスキン 2010年手帳 パノラマダイアリー ロフト限定版
※写真クリックで拡大

ロフト限定版だとわかるシールが貼られた
「パノラマダイアリー」

ちなみにラインナップにはソフトカバーの黒しかない。

肝心のお値段は税込1,680円
サイズは9×14cm

モレスキン 2010年手帳 パノラマダイアリー ロフト限定版
※写真クリックで拡大

裏から撮った写真。

ベージュの部分がロフト限定のおまけとなる「別冊マンスリースケジュール帳」

おまけがちらりと見えるのが購買意欲をさらに刺激(^^;;


モレスキン 2010年手帳 パノラマダイアリー 表紙
※写真クリックで拡大

シンプルな表紙。

ビジネス仕様!という雰囲気が強いので
何かシールを貼ってしまいそうな空間・・・

写真には載せてないが他のモレスキンと同様に便利な拡張ポケットも健在。


モレスキン 2010年手帳 パノラマダイアリー 表紙
※写真クリックで拡大

シンプルな表紙ページ。
パノラミック週間スケジュールということかな。


モレスキン 2010年手帳 パノラマダイアリー 月間カレンダー
※写真クリックで拡大

1ヶ月が縦に展開された月間カレンダー。
1ページに1ヶ月分。見開きで4ヶ月分。

曜日のアルファベット1文字と日付の数値のみというシンプルな構成。
月曜日始まりが意識されているようで月曜日毎に太めの罫線が引かれている。

縦展開なので月内での継続した予定を書き込むには便利そう。


モレスキン 2010年手帳 パノラマダイアリー 物差し
※写真クリックで拡大

意外とあれば便利な物差し。

手帳を当てることでサイズが測れるので主に小物など気になったものをチェックできそう。
センチとインチの両方の目盛がある。

モレスキン 2010年手帳 パノラマダイアリー メインページ
※写真クリックで拡大

メインページ。
月曜日始まりの見開きで1週間分。
上段は3日分とToDo、コンタクト記入欄。
下段は4日分とメモ欄、月間カレンダー。
土日が平日の半分のサイズ。
平日より土日に予定が少ない人向けか。

1日は8~20時の時間枠が有る。
土日は時間枠が無くて罫線のみ。土曜が7行、日曜が6行。

ToDo欄はやはりあると便利。
欲を言うなら「ほぼ日手帳」のようにToDo欄にチェック用のボックスが印刷されているとさらによかったかも。

1週間の予定が見渡せるので使い勝手が良さそう。
やはり縦開きというのが新鮮。

モレスキン 2010年 マンスリースケジュール帳 表紙
※写真クリックで拡大

ロフト版限定のおまけとなっている
「マンスリースケジュール帳」がコレ。
別冊でポケットサイズの手帳よりも少し小さく挟めるサイズ。

これまたシンプルな表紙。

モレスキン 2010年 マンスリースケジュール帳 月間スケジュール
※写真クリックで拡大

見開きで1ヶ月の月間カレンダー。
「パノラマダイアリー」の月間カレンダーとは違うので普通のカレンダー的な視覚で観たい情報はこちらが便利かな。


今年使っている手帳は「ほぼ日手帳」だけど「パノラマダイアリー」がこれに取って代わるかもしれない内容。
サイズも持ち歩きにちょうど良いし。
本当は手帳一本化が良いのだけど「ほぼ日手帳」と平行利用する可能性も考えている。
来年まであと3ヶ月はあるし 悩んでいこう(^^;;

年間を通したプロジェクト管理に使えるのではないかと思って気になっていた「プロジェクトプランナー」
だいぶ悩んだ結果、価格と内容が自分としては納得がいかず結局見送り。

確かにこういう展開したものはないけど・・・1冊分の値段というのがなんとも高く感じる。
有効性についてもう少し悩んでみよう。


Willcom03「iPhoneToday」少し追記

昨日のエントリの「iPhoneToday」。意外と検索ヒットされて来る方がいらしたので少し追記。

WiFiは「Wifictrl」、Bluetoothの切替するアプリは「BtCtrl」をそれぞれ割り当てた。
あとはアニメーションをオフに設定している。
 →「Launt Animation」のチェックをオフ

SMSはW-ZERO3メールのアプリを割り当て、アイコンも変更。
Willcom03のメール・電話についてはWindowsMobileの仕様ではなくウィルコム独自なので未読メール数の表示は非対応。

今のところ安定動作中。


Willcom03に「iPhoneToday」をインストールしてみた

久しぶりにWillcom03ネタを。

先日Willcom03にWindowsCEファンのソフトライブラリをインストールできるアプリ「Aplio」を入れた。
そこで発見したToday画面をiPhone風にカスタマイズする「iPhoneToday」

サーバー構築してたら待ち時間ができたのでにちょっと触ってみた。
Willcom03にiPhoneTodayをインストール

03から「Aplio」を起動して、iPhoneTodayをインストール。

インストール時に警告ダイアログが一度出たけどインストールはできた模様。

インストール後、Today管理画面を開く。
Todayのアイテムを「iPhoneToday」だけチェックして後は外す。
画面で長押しするとアイコンの追加や削除、編集が可能。

現状3枚までのスクリーンにアイコンが登録できそうな表示が。

よく使うアプリを1枚目のスクリーンに登録してみた。
メッセージは英語だけど直感的に触れるので便利。

インターフェイスはiPhoneと同じようにタッチ&スライドでページをめくることができる。
意外にスムーズでそれっぽい。

標準で今日の予定数とToDo残数が追加表示されていた。
ちなみにiPhoneTodayの設定のままではWiFiとBluetoothの切替ができないのでそれぞれアプリを割り当て。
でもなぜかWifiのステータスがおかしい(^^;;


WindowsMobileはWindowsMobileらしくと思うところはあるけれど触ってみると
iPhoneのインターフェイスはタッチの場合は使いやすいことを改めて実感。
しばらくこのToday画面で使ってみようかな~

ひろ院長に影響されて仕事用携帯をiPhoneに機種変しようかと日々葛藤中だけど
これで少し物欲が落ち着くかもしれない(^^;;


ZenCart レビュー投稿者を年代+性別で更新するように修正

ZenCart導入テスト中に変更したいと思った点。

デフォルトでは商品レビューが顧客の氏名になってしまう。
これでは個人情報の問題もある為 記入してくれる人が減る可能性が高いと思う。

調べてみるとレビューを更新している対象ファイルはこの部分らしい

対象のファイルは、
/zencartフォルダ/includes/modules/pages/product_reviews_write/header_php.php

コードを観ると顧客マスタ【customers】から姓名「customers_firstname」「customers_lastname」を取得し、
レビューテーブル【reviews】の「customers_name」に更新している模様。

そこでレビュー更新時に顧客マスタの生年月日と性別を取得し、レビュー投稿者名を
年代と性別で更新するように修正してみた。

年代は、生年月日とシステム日付から計算。

下記のような修正でレビュー投稿者名が「30代 男性」のように更新されるようになった。
これで気になった部分が解決。

※サンプルコードの環境:Zen Cart 1.3.0.2-l10n-jp-5
PHP:5.1.6 MySQL 5.0.27

/zencartフォルダ/includes/modules/pages/product_reviews_write/header_php.php
変更部分を抜粋

  1. //----------2009.09.11 @Links edit start
  2. //抽出に性別と年代を追加
  3. //$customer_query = "SELECT customers_firstname, customers_lastname, customers_email_address
  4. $customer_query = "SELECT customers_firstname, customers_lastname, customers_email_address , customers_gender , (truncate((YEAR(NOW()) - YEAR(customers_dob)) / 10,0) * 10) as age
  5. FROM " . TABLE_CUSTOMERS . "
  6. WHERE customers_id = :customersID";
  7. //----------2009.09.11 @Links edit end
  8.  
  9. $customer_query = $db->bindVars($customer_query, ':customersID', $_SESSION['customer_id'], 'integer');
  10. $customer = $db->Execute($customer_query);
  11.  
  12. if (isset($_GET['action']) && ($_GET['action'] == 'process')) {
  13. $rating = zen_db_prepare_input($_POST['rating']);
  14. $review_text = zen_db_prepare_input($_POST['review_text']);
  15.  
  16. $error = false;
  17. if (strlen($review_text) < REVIEW_TEXT_MIN_LENGTH) {
  18. $error = true;
  19.  
  20. $messageStack->add('review_text', JS_REVIEW_TEXT);
  21. }
  22.  
  23. if (($rating < 1) || ($rating > 5)) {
  24. $error = true;
  25.  
  26. $messageStack->add('review_text', JS_REVIEW_RATING);
  27. }
  28.  
  29. if ($error == false) {
  30. if (REVIEWS_APPROVAL == '1') {
  31. $review_status = '0';
  32. } else {
  33. $review_status = '1';
  34. }
  35.  
  36. $sql = "INSERT INTO " . TABLE_REVIEWS . " (products_id, customers_id, customers_name, reviews_rating, date_added, status)
  37. VALUES (:productsID, :cutomersID, :customersName, :rating, now(), " . $review_status . ")";
  38.  
  39. $sql = $db->bindVars($sql, ':productsID', $_GET['products_id'], 'integer');
  40. $sql = $db->bindVars($sql, ':cutomersID', $_SESSION['customer_id'], 'integer');
  41.  
  42. //----------2009.09.11 @Links edit start
  43. $sex = '男性';
  44. //DBから性別を取得
  45. $sex_value = $customer->fields['customers_gender'];
  46. //DBから年代を取得
  47. $age = $customer->fields['age'];
  48.  
  49. //性別が女性の場合
  50. if ($sex_value == 'f') {
  51. $sex = '女性';
  52. }
  53.  
  54. //$sql = $db->bindVars($sql, ':customersName', $customer->fields['customers_firstname'] . ' ' . $customer->fields['customers_lastname'], 'string');
  55. //年代 + 性別を顧客名とする
  56. $sql = $db->bindVars($sql, ':customersName', $age . '代' . ' ' . $sex, 'string');
  57.  
  58. //----------2009.09.11 @Links edit end
  59.  
  60. $sql = $db->bindVars($sql, ':rating', $rating, 'string');
  61.  
  62. $db->Execute($sql);