土曜日, 3月 05th, 2011 | Author:

JQuery で よく使う、同じtable 内のチェックボックスを全on / off する作法


↑これ!

解答

CODE:
  1. /* 全員チェックのボタン */
  2. $(function () {
  3.     $("[class*=checkAll]").click(function () {
  4.         $(this.parentNode.parentNode.parentNode).find('input[type=\'checkbox\']').attr('checked', this.checked) ;
  5.     });
  6. });

全選択のボタンには class="checkAllhogehoge" がついてます。

それがクリックされると 親ノード(td) → 親ノード(tr) → 親ノード(table) → の中から チェックボックスをさがして this.checked と同じにすることによってトグル動作を実現
cool!

いつも考え直して時間の無駄なのでのでメモっとくよ!

あ、ゆりえさまは中2だ…

金曜日, 2月 18th, 2011 | Author:

完全なるメモです、でも同じ状況で壁を殴った人が多いと思う件

Firefox で特定のサイト(ジャンル問わず)に行こうとすると
読み込み途中で白くなって固まりやがる…再現性100%
セーフモードでも止まるって…もう死ねと言われてるような感じがしたorz

何回壁を殴ろうとおもったか…。

結論を言うと Osaka フォントをアンインストールすれば解決した。

Windows7 64bit とOSAKA フォントは相性がわるい?
前の環境から丸移動したから使わないけど残ってた。
まさかフォントが悪さするとか思いもつかず
アドオンとかテーマとか開発環境とか全部リセットしたのに…orz

Category: 未分類  | Leave a Comment
木曜日, 2月 17th, 2011 | Author:

ビックカメラの駐車料金を浮かすために無理矢理 標記のHDD買ったorz
でも6k以上で2hってきついわ…結局5h停めたし焼け石に水かな、

で、とりあえずファイルサーバにぶちこんだ。
これで 2T + 2T + 1.5T になったわけだが何が入ってるんだろう・・・。

以下備忘録
@CentOS5.3
低速病防止
fdisk の時に 上級者モードに切り替えて
→パーティションの開始セクタを 8 の倍数にする(63→64)
パーティション1個だったらこれでOKなの?

以下今回作業に当たって覚えたこと
現在マウントされているファイルシステムを調べる

df -T

/etc/fstab の内容で再マウントする

mount -a

fstab 書き換えミスって再起動して顔面蒼白経験な野郎は要チェックだぜ!

Category: 未分類  | One Comment
土曜日, 1月 01st, 2011 | Author:

あけましておめでとうございます。

個人的には問題と課題が山積したまま放置プレイ中ですがw
何とか2010年を締めくくり、2011年を迎える出来たようです。

それでは、本年も一寸先は大爆笑の雰囲気で過ごしていきたいと思います。

くだらない言葉狩りや、恣意的にゆがんだ規制をされることなく、
子供たちがいろんな方向に夢見られるような日本になればいいですね。

とりあえず、いただいたミカンがうますぎてすでに手が黄色い年明けでした。

かーみーちゅー!

Category: 未分類  | 2 Comments
月曜日, 12月 20th, 2010 | Author:

ちょっとやけくそで
Core i5 の機械に買い換えた。Windows7 64bit HP。プロにしとけばよかった・・・・

リカバリー時に環境もどすのがめんどくさいのでメモ

おそがけながら、本気で7をいじろうと開発環境一新したけど
いろいろひどい…やっぱりXPでいいや…の記録

■エクスプローラー改悪
・「上へ」がない→QTTabbar 入れてたからいいけどカスすぎる

・ファイル一覧で、日付とかファイルの種類とかをクリックしても選択されてしまう。ドラッグで器用にファイル選べない。
 →カスすぎる…対応不可らしい

・UACでいきなり暗くなって怖すぎる → 画面を暗くする設定をオフに

・ウィンドウを画面端にドラッグすると、最大化してくれる→カスすぎる
 →コンパネ→「コンピューターの簡単操作センター」→「マウスを使いやすくします」
 →「ウィンドウ画面の端にきたときに整列しないようにします」にチェックでお節介機能を殺す

・タスクバーが改悪され、クイック起動がなくなった→隠れてるだけなので
新規ツールバー にて
C:\Users\ユーザ名\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch
を選択して追加すると見慣れたクイック起動バーが出てくる

随時加筆していこう。

メモリ12Gとか全く使い切れない件。
唯一のメリット:エンコードが早くなったんじゃなイカ?

Photoshop もCS5にしたけど、ユーザーがバージョンアップしないと使い切れない(笑

Category: 未分類  | Tags:  | 2 Comments
月曜日, 10月 18th, 2010 | Author:

jQuery の楽ちんさは言わずもがな…、jQuery UIのほうも、しばらくつかってなかったら超絶進化してた。
すべて入れ替えるぐらいの勢いで導入しまくってます。長いものには巻かれまくる33歳です。

前置きはおいといて… Datepicker +用意されてるテーマをつかっただけだとこうなります。↓ 土日とか完全無視です

で、これを↓こうしたい!!

(これは一応いいところまで行った感じのアレです。自前の休日テーブルを動的取得して動いてます)

土日はclassを分けて出力してくれてるかなとおもって調べたら

土曜日・日曜日ともに .ui-datepicker-week-end で出力されている

土日でそれぞれ色を変えられませんorz  土日が一緒の色とか意味なしじゃんかー。

なのでどうするかなーっと。…かといってコアいじってjQueryのバージョンアップに対応できないのは
あとで地獄をみるのが見えている。経験済みだ。

とりあえずググってみる
GoogleカレンダーからJSONPで日本の祝日一覧を取得 - GCalendar Holidays [ゼロと無限の間に]
おおおお。これはすばらしい記事です。

Datepickerを、コールバックでフックして、表示後、色を変えるという考え方です。
しかも外部(GoogleCalendar)から祝日データをひっぱって来られると。ちょっと希望の光が。

ソース拝借して動作確認。おおお、若干遅れ気味ながら色が変わります。すばらしい…のですが

後半に続くorz

月曜日, 10月 11th, 2010 | Author:

このまえついったーで突っついたーけど 一応
普通DBには生年月日は入れても、年齢なんて入れない事が多いとおもうんで
毎回年齢計算のロジックをもっとスマートにできんかなーと思ってた矢先

( 今日の日付 - 誕生日 ) /10000の小数点以下切捨てで、簡易的に年齢が出る

今日 2010/10/11 だとする → 20101011
誕生日 1977/07/31 だとする → 19770731

20101011 - 19770731 = 33028
33028 / 10000 = 切り捨て 33

いや、まぁ至極当然な結果なんだけど(汗)

PHP:
  1. $nowDate = (int)(date('Ymd'));
  2. $birthday = (int)(date('Ymd' , strtotime( $userBirthday )));
  3. $age = (int)( ( $nowDate - $birthday ) / 10000 )

PHP:
  1. $nowDate = (int)(date('Ymd'));
  2.     $birthday = (int)(date('Ymd' , strtotime( '1977/07/31' )));
  3.     $age = (int)( ( $nowDate - $birthday ) / 10000 );
  4. // (int)でキャストしてるけど、そのままでも行けるような気もする

自治体によって年齢の基準がいろいろあるんだそうだ。
でもとりあえず雰囲気だけでいいならこれで十分!!

はぁ・・・33か・・・・

はぁ…

月曜日, 10月 11th, 2010 | Author:

誕生日ポイントを自動で付与したいとか、思いつきで言われたので

会員情報検索で、~月が誕生日の人を探す
というのをどうしようかなーと思ってたんだけど

birthday は DATE 型。普通に大小で年月日比較してもどうしようもなくなるのでいろいろ考えた結果

LIKE節で月の部分だけマッチさせればいいという事にした。
CakePHP風に書くとこんな感じ

'User.birthday LIKE' => sprintf('____-%02d-__' , $month ) ,

user.php 内の Class User

PHP:
  1. function getBirthMonthUser( $month = null ){
  2.  
  3.         if( !is_numeric($month)){
  4.             $month = date('m');
  5.         }
  6.         $options = array(
  7.             'conditions' => array(
  8.                 'User.birthday LIKE' => sprintf('____-%02d-__' , $month ) ,
  9.             ),
  10.             'order' => array(
  11.                 'grade_id DESC',
  12.             )
  13.         );
  14.  
  15.         $this->recursive = 0;
  16.  
  17.         $users = $this->find('all' , $options);
  18.  
  19.  
  20.         //月日だけで並び替えるために月日だけの文字列を作る
  21.         foreach ($users as $key => $us){
  22.             $users[$key]['User']['bdayStr'] = substr( $us['User']['birthday'] , -5);
  23.         }
  24.  
  25.         //作った文字列で配列をソート
  26.         $sorted  = Set::sort($users , '{n}.User.bdayStr', 'ASC');
  27.         return $sorted;
  28.     }

普通にデータ取ってくると、月日順で並んでない(order句を使っても「年」月日でしかソートされない)ので、
ちょっと雑なカラムを無理矢理作成して、 Set::sort を使って月日で並べ替えてから返してるよ!

Set ユーティリティはCakePHP の便利関数がまとまってるツール。
Set :: コアユーティリティライブラリ :: マニュアル :: 1.2コレクション :: The Cookbook

めんどくさそうな配列地獄をちょっとだけ見なかったことにしてくれる便利な奴。
挙動(というか使い方)がイマイチ謎な部分も多いけど、使えるものは使ってみよう。

controller からは $this->User->getBirthMonthUser( 10 ) ;

とかやると10月に誕生日なユーザがニュルっと引っ張れます。

絶対もっとスマートな方法があるはずだ・・・・

水曜日, 9月 29th, 2010 | Author:

obAuth と Ktai Library を併用すると $component = array('Ktai'); があるコントローラでobAuth->lock が利かない…

pr($this->obAuth);
調べてみるとどうもログイン情報が引っ張れていないようだorz

ということは、セッションがらみだろうなぁとおもって、携帯セッションを使わないように切り替えたら行けました。

PHP:
  1. var $ktai = array(
  2.         'enable_ktai_session' => false,
  3.     );

とりあえず携帯は認証不要なシステムだったので
でも動かさないと駄目だったので場当たり的な対応。

Todoに1個追加…ちょっと対応考える必要あり。

やはり管理用と外部用はアプリ自体を分けるべきです… 
一緒くたにするとめんどくさすぎる。

火曜日, 9月 28th, 2010 | Author:

自鯖から、sendmail をApache経由で -f 付けてfromを変更して送ると

送信したメールのヘッダにこのように

Message-Id: <2010********.******0**1*214@kyosuke.net>
X-Authentication-Warning: kyosuke.net: apache set sender to *******@***.********.ne.jp using -f
To: *******@ezweb.ne.jp

X-Authentication-Warningが付加される。

まぁ偽装されてるかもしれませんよ!と
「fromが書き換えられているので信頼できないかも知れません」
ご丁寧に教えてくれるわけですが、これで配信すると迷惑メールフォルダにぶち込まれたり、
キャリアによっては届かないこともあるので、

sendmail.cf をいじってもいいけど、
/etc/mail/trusted-users に信頼できるユーザとして apache を加えればOK

# trusted-users - users that can send mail as others without a warning
# apache, mailman, majordomo, uucp, are good candidates
apache ←追加

sendmailの再起動も不要でこっちのほうが早い?