#CakaPHP のHTMLヘルパーからの出力を無理矢理修正する。

お客さんからCakePHPから出力するHTMLコードが汚いと言われました。特に<head>の中の<meta>がつながって読みにくいと言われてしまいました。別に人間が読まないからいいじゃないと思いますが、ここはお金をいただく身ですので、こころよく修正してしまいます。

HTMLヘルパーは出力するときにHtmlHelper.phpでsprintf()で整形して追加しているだけのようですので、とりあえず簡単にsprintf()の書式に\nを追加してしまいます。

CakePHP自身を修正したくないので、MyHtmlヘルパーを作ってHtmlヘルパーから継承させてしまいます。

[code]

<?php
App::uses(‘HtmlHelper’, ‘View/Helper’);
class MyHtmlHelper extends HtmlHelper {
public function __construct(View $View, $settings = array()) {
parent::__construct($View, $settings);
// HTMLヘルパーで整形して出力するコードの行末に改行を入れて、きれいなHTMLコードを出力する。
foreach($this->_tags as $key => $value) {
$this->_tags[$key] = $value . “\n”;
}
}
}

[/code]

使うときには、コントローラーのヘルパーの設定で、

[code]
public $helpers = array( ‘Html’ => array(
‘className’ => ‘MyHtml’
)
);
[/code]

のようにしておきます。これでHTMLヘルパーを使っているViewを修正せずに、MyHtmlヘルパーを使えます。今回はメソッドの追加変更はありませんので、そのままHTMLヘルパーを使えます。

あまり役に立たないコードです・・・。

#Dropbox のパスワードが変更できないエラーが出る。

#Dropbox のパスワードが変更できないエラーが出る。

Dropboxで共有フォルダを設定したくて、Dropboxのサイトのアクセスする。ログインすると、パスワードの有効期限が切れたので再設定してね、と言うので再設定した。

しかし、新しくパスワードを設定したところで、500のエラーのページに飛ばされた。

「エラー
所定の処理が完了しませんでした。ご利用のファイルは安全に保存されており、・・・」

何回かやっても同じ現状。2 ステップ確認の厳しいセキュリティ設定したのが原因なのかな?

どういう訳が、トレイにあるDropboxのアイコンを右クリックして、サイトを開くを選択したら大丈夫だった。こちらで共有フォルダの設定をしてしまう。ファイルの同期もまだ正常にやっているみたい。

このままではいけないので、DropboxのサポートサイトからFAQでこの現状がないかを調べても情報はなかった。仕方ないのでサポートにメールを送っておいた。日本語で送ったけどDropboxのサイトは日本語になっているので大丈夫でしょう。

2日経っても回答がないので、サポートフォーラムを検索してみた。すると同じ現象を報告していた。回答はしばらくすると直るとあった。こちらもそんな気長なことも言ってられないので、自分も同じトラブルで困っている、と今後は英語でフォーラムに書き込んでおいた。するとすぐに、今は直っているよ、と回答があったので、やってみると変わらない。まだ動かないよ、と書き込んだら、すぐさま1~3日かかるよ、と言われたので、まだ待っているところ。

Google+: View post on Google+

ポケモンキーボードをタブレットにつないでみた。

amazonで2,000円ほどで売っているポケモンキーボードを買ってみた。あわよくば中華タブレットで文字入力ができればよろしいかと。

ニンテンドーワイヤレスキーボードは、Bluetooth対応なので、運がよければつながります。

ペアリングまではできましたが、キー入力ができませんでした。

というわけで本来の目的のチビの3DSの入力練習機材となりました。

Google+: View post on Google+

#CakePHP でOGPの対応

今、サポートしているゲームのブログランキングのサービスで、OGPへの対応の要望がありました。

Htmlヘルパーを地道にビューに設定すればいいのですが、何かよい方法がないかと調べてみました。

やはりありました。既にCakePHPのプラグインを作成してくれていました。しかもCakePHP2に対応されています。

Ogphttps://github.com/monsat/Ogp

オリジナルのままだと、作っているサービスには機能不足なので、機能を追加します

  • og:url に自動的に自分のURLを挿入する。
  • プリフィックスがog:以外に、Facebookのためのfb:を設定できるようにする。

いろいろとソースを修正できるのも、オープンソースのいいところ。

Githubにリポジトリを公開されていたので、Pull Requestして追加したソースの差分を取り込んでもらいました。

個人情報の取り扱いなんていい加減であったこと

非通知の電話がかかってきた。大抵はセールス電話である。非通知拒否をしているので最初は電話には出ない。すぐさま080で始まる携帯電話からの着信がある。発番通知でかけ直したのでセールス電話と確定する。

電話を出てみると、母宛ての信用金庫からの電話であった。最初に電話がセールス目的か、口座のトラブルかを確認する。セールスであった。

いろいろ個人情報の取り扱いについて聞いてみたが、全く答えられなかったので上司に報告して折り返し連絡してもらうことにした。しばらく経って副支店長から連絡があった。結局話しの中身からは、個人情報の取り扱いなんていい加減であるということがわかった。最後は、個人情報はくれぐれも漏らしたり紛失しないようにお願いしておいた。

この信用金庫の個人情報の取り扱いのリスクは高すぎると思った。サイトには個人情報の機密性・正確性の確保に努めると、ありきたりのことは書いてあったが。

Google+: View post on Google+

PHPカンファレンス2012に参加しました。  #phpcon2012

PHPカンファレンス2012に参加しました。  #phpcon2012

昨日はPHPカンファレンス2012に行ってきました。会場は蒲田の大田区産業プラザです。

今年は、WordPressのWord Campと同じ会場です。同時開催とは聞いていいたけど、本当に同じスペース内でやっているのね。同じ会場で別のところだと思っていた。

セミナーはクローズの教室ではなくて、まるで展示会で企業が会場で講演会をするようなオープンなところでやっていた。Word Campのほうでじゃんじゃん音を鳴らしていたので、これはどうも落ち着かない。プロジェクタでプレゼンをするのだけど、スクリーンが小さいので見えない。前のほうの席を確保する。

それにWord Campが同時開催となると、PHPカンファレンスかいずれかを捨てなければいけない。来年は、別々にやって欲しいな。そうすれば、どちらも参加できるのに。

今回は名刺を忘れて大失敗。懇親会は参加しませんでした。懇親会だけでも価値があるかな。

Embedded Link

PHPカンファレンス2012
日本最大のPHPの祭典

Google+: View post on Google+

ウイルスバスターの無料バージョンアップをやってみる。

前からウイルスバスターから警告メッセージが出ていましたが、どうせ広告だろうと思って無視していました。

ウイルスバスターは、次回の更新でやめるつもり。何だかいろいろなところでPCが重くなったりしているので。

さて、次のアンチウイルスソフトは何にしようか。ほとんど有名どころは試してみたし。PCに影響の少ないESETに戻しましょうか・・・。

Embedded Link

ウイルスバスター 無料バージョンアップ – トレンドマイクロ
トレンドマイクロは、ウイルスバスターをご利用中のお客さまが、いつでも、無料で新製品をお使いいただける『無料バージョンアップ』サービスをご提供しています。ウイルスバスターで、安心なインターネットライフをお楽しみください。 ※インターネットからのダウンロードに限ります。 ※インターネット接続に伴う通信費 …

Google+: View post on Google+

リコーのGR1sを売ってみた。

10年以上前に買ったフィルムカメラ。GR Digitalにつながるカメラです。

あるショップでオンラインで買い取りの見積りを取ったら、最大で18,000円だった。どうせ使わないしということで、その半額でもいいからということで、買い取りに出してみた。

結果は、ストラップの金具の部分にキズが付いているということで並品。その半額以下だった。

1年前に購入したソニーのNEX5は最大で20,000円ということなので、フイルムカメラはまだ高いということか、デジタルは安すぎということなのね。

In album 2012年9月16日(写真 1 枚)

Google+: View post on Google+

#baserCMS はPHPのバージョンによっては動かないので注意。

OSC2012で紹介されていたbaserCMSをインストールしてみました。

まずはローカルのPCにインストール。インストール自体は簡単ですが、残念ながら管理者ダッシュボードの中で固まります。

PCではXAMPPの上でbaserCMSを動かしているのですが、もしやと思って古いバージョンのXAMPPで動かしてみると、今度は問題なく動きます。baserCMSはCakePHPの上で動いています。一緒にインストールされるCakePHPのバージョンを見たら1.2でした。これは古い・・・。

baserCMSのサイトでシステム要件を見たら、PHP5.2.17以降となっていますが、経験上CakePHPの1.2ではPHP5.3以降は、エラーが出て面倒なことになりそうです。

今使っているXAMPPのバージョンは、1.7.7で一つ古いのですが、動いているPHPが5.3.8なので、それが問題かもしれません。最新版のXAMPP1.8.0はPHP5.4.4なので、そこまで新しいと本番サーバーが間に合わないので使っていません。baserCMSが動くXAMPPのバージョンは1.6.8でPHPは5.2.6でした。PHPが5.2系なら大丈夫なのでしょう。本番サーバーでよく使うRedhat系のCentOSも6だと、PHPは5.3系がインストールされるので、このままだとbaserCMSは本番サーバーにインストールしたときに問題になるでしょう。

以上、出鼻をくじかれたので、今日はbaserCMSはインストールしただけで終わってしまいました。baserCMSが新しいCakePHPに対応するまで待ったほうがいいかもしれません。それとも今まで通りWordPressでサイトを作ったほうがいいかもしれません。

フィットシャトルのハイブリッドに乗り換えて1ヶ月の感想

オデッセイからフィットシャトルのハイブリッドに乗り換えて一ヶ月になります。簡単な感想です。

モニタにガソリンかモーターで動かしているか、両方か、はたまたバッテリーに充電しているかが表示されて、それなりに楽しいのですが、モーターだけで動かしているなんてときはわずかです。これはホンダのハイブリッドの特性ということで、説明をディーラーの営業から聞いていたのでわかっていたのですが、ちょっと残念。もっとモーターで動いてくれよと思うのでした。

燃費はモニタ上では16km/リッターという辺りでしょうか。エンジンが1.3なので、ハイブリッドだから良いということもなさそうです。こちらも営業から聞いていましたのでいいのですが、オデッセイの6kmよりも随分ましになりました。ハイブリッドがいいということではなくて、アイドリングストップの効果が高いということなのでしょうか。IMAのハイブリッドシステムは、燃費によいという結果ではないかもしれません。ということは、ホンダのクルマを購入するときは、ハイブリットはあまり買っても意味のないものと思いました。

ホンダ車の加速の楽しさというのがないのが残念。ハイブリッド車だからもっと遊べると思っていましたが。

燃費がよくなってガソリンスタンドに行く回数が減ると思っていましたが、結局はオデッセイのときと変わりません。フィットシャトルは、床下にガソリンタンクを配置したためか、容量がオデッセイの半分になってしまいました。

サイズが小さくなったので、街乗りにはよさそうです。キーレスエントリは便利です。トヨタのハイブリッド車に比べて静かではないので、今まで変わらずエンジン音はします。これはいいのか悪いのか。

しかし、大きな問題は、フィットシャトルに買い換えてからキャンプに行かなくなったことです。オデッセイのトランクサイズに合わせてキャンプ道具を揃えてきましたので、フィットシャトルに入るか問題です。キャンプ道具もサイズに合わせて買い換えでしょうか・・・。

Embedded Link

Honda | クルマ | フィット シャトル
こちらはHonda フィット シャトルの公式情報ページです。最新のWEBカタログで、外観や内装、ユーティリティをはじめとする、フィット シャトルの様々な魅力をチェックいただけます。セルフ見積り、販売会社検索、試乗車検索、商談申し込みなど購入検討に便利なツールもご用意しております。

Google+: View post on Google+