ラジオボタンがおかしい。

Jquery mobileを使い始めてから
一日一つはまるジョンです・・

今日はラジオボタンが一度クリックしたら、
次はui-button-activity? が付かず、押されない件についでです。

環境は
jquery-1.6.0.min.js
jquery.mobile-1.0a4.1.min.js

を使ってました。

結論から言うと
jquery-1.6.0.min.js -> jquery-1.5.2.min.js
に変更することで、直りました。
意味不明・・・>0<

いつになったら
安定してくれるんだろう。。

メンテナンス中ですよー♪

来週サービスのメンテナンスの予定していますー

のでーメンテナンスページを作成。

だけど、メンテナンスページをgoogleとかのサーチエンジンに読ませたくない・・

というときには

HTTPステータスコードを503(Service Unavailable)
にすると

"あ!今はメンテ中なんだねーあとでまた読みに来よう"

となるみたいです。

symfonyでは
$this->getResponse()->setStatusCode(503);
を追加するだけ!

みんな知ってるかも知れませんが
メモをかねてでした〜♪

Symfony の validateエラーをactionで判定したい場合

こんにちは。みきです。

そのうちコードから削除されると思うので、備忘録的に。

Symfonyのvalidateは、formで行うので、actionで何かすることはないのですが、今回、どうしてもactionで判定したいことがありまして。

要件としては、

・Aサイトでの会員登録時に、既存メアドを指定されたら、通常のエラーメッセージを表示したい。
・Bサイトで同様のエラーがあった場合は、通常のエラーメッセージ+目立つ所に移行文言とリンクを表示したい。

デス。

action内でもう一度判定するのもイマイチなので、formからエラーを取得してみました。

// formの一括validateチェック
if ( ! $form->isValid() ) {

  $isDupulicateMailError = false;

  // メアドのエラースキーマを取得
  $emailErrorSchema = $form->getErrorSchema()->offsetGet('email');

  // メアドエラーがある場合
  if( ! is_null($emailErrorSchema) && ($emailErrorSchema instanceof sfValidatorErrorSchema) ){

    // メアドの全エラーを取得
    $errors = $emailErrorSchema->getErrors();
    foreach ($errors as $errorMessage) {
      // キーで判定したいとこですが、スキーマから取ると他にデータがないようなのでメッセージで判定
      if( false !== strpos($errorMessage, '登録') ){
        $isDupulicateMailError = true;
      }
    }
  }
}

instanceof でクラス判定をしておかないと、空で処理された場合に、エラーになってしまうので、要注意。

formの送信ができない!

お久しぶりです。みきです。

SymfonyでPCサイトができているものを、Jquery mobileでスマフォ対応しているのですが、普通にformを書いたら、送信が返ってきませんでした。。。


ココ↓によると、

http://dev.screw-axis.com/doc/jquery_mobile/components/forms/submit/

デフォルトでAjaxでSubmitされるせいのようです。
でもって、対策としては、初期値設定を(jaxFormsEnable を disable に)変えてくださいってことなので。

参考:
http://dev.screw-axis.com/doc/jquery_mobile/api/configuring_defaults/



1.下記のjavascriptを作る

custom-scripting.js

$(document).bind("mobileinit", function(){
  $.extend(  $.mobile, { ajaxFormsEnabled: false });
});

2.view.ymlに追加

default:
   javascripts:    [jquery-1.5.1.min.js, custom-scripting.js, jquery.mobile-1.0a4.1.min.js]

3.フォーム要素に data-ajax=“false” 属性を指定


で対応可ですw

Linuxで1フォルダ内でのフォルダ数の上限

忘れないようにメモをかねて♪

あるプロジェクトで
1フォルダ中にユーザのUID別のフォルダを作ってキャッシュさせている件・・
もう限界かなぁ?と思っていたところ、
やっぱりユーザからの問合せ>0<

そこでちゃんと調べたら

Linuxファイルシステムが1つのフォルダの中に作られる数は

ファイル数:10000〜15000
フォルダ数:32768

が限界ぽいっ・・

一つのサーバが32000にを少し超えてました。
rm で少しずつ削除して解決。

ちなみにフォルダ数の調べ方は
$ ls -l | grep ^d | wc -l 

明日からまた3連休なので、その休みだけ無事に動いてほしい〜 その後ちゃんとCRON設定するから・・

ページ遷移ではまる。。

みなさんGWはどう過ごされてますか?
じょんです♪

もう連休の半分が過ぎちゃいましたね>0<

というところで
先週くらいから
ずっとはまっていたjquery mobileでもページ遷移について話します〜〜

jquery mobileを使ってページ遷移したらなぜか
(page1からpage2に遷移した場合)
>http://hogehoge.com/page1.html#page2.html
になってします事件・・・
遷移されたpage2も普通に動きますが
中でページ内リンクを使おうとすると
>http://hogehoge.com/page1.html#page2.html#link1
となり・・わけわからない動きをしてくれる・・

やっとー解決しました。
方法は↓
a href="page1.html" data-role="button" rel="external">ページ1へ

※rel="external"をつけるだけ※
symfonyにだとlink_to(page2へ,'/page/page1',array('rel'=>"external"))

jquery mobile なかなか仲良くなれないですね^^

残りの連休も楽しんでください〜!