2015年7月19日日曜日

「南旺理工(nanoRico)」の和字表記由来と英字表記由来をサイドバーにがんばって記したよー!

以下の内容をサイドバーにも記しました。
(地名表記「南旺」の由来の部分はこれまでもちょこっと書いてありましたが)

[和字表記由来]
 「南旺」(なんおう)はプノンペンの昔の漢字表記です。昭和の日本でもプノンペンは「南旺府」と呼ばれていました。プノンペンの音とプノンペンの南国の太陽のイメージをともにビビッドに表せている表記だと思っており(現代日本語読みだと音は程遠いですが…)、現在の中国語表記「金辺」より好きなので使っています。ベトナムの巷間では現在でも南旺のベトナム語読みNam Vangの名で呼ばれています。
 南旺理工の名には、プノンペンの過去をふまえながら未来の世界を理工で今日創っていこうという意気込みを込めてあります。

[英字表記由来]
 nanoはギリシャ語「小人」に由来し、10のマイナス9乗を意味する接頭辞になっています。ricoはスペイン語で「豊かな、素晴らしい」を意味します。
 nanoRicoの名には、細部にこそ素晴らしい価値を宿らせる仕事をしていこうという意気込みを込めてあります。と同時に、ちっぽけながらもみんなで豊かになりたいねというささやかな願いもひそかに込めてあります。

2015年7月10日金曜日

Drupalで、使用者ごとに異なる選択肢を提示するけど管理者に全選択肢を提示

いや~、かなりハマったけどできるようになったんで、覚書っす。

前提:


  • Customerエンティティ型のCustomerバンドルにはPurchaserフィールド(ユーザーへのエンティティ参照型)とCustomerフィールド(テキスト型)がある。
  • Jobエンティティ型のJobバンドルのCustomerフィールド(エンティティ参照型)がCustomerエンティティ型のバンドルすべてのCustomersビューのEntity ReferenceディスプレイのCustomerフィールドを参照。
  • 使用者は役割purchaserを持つ。管理者(Drupalのadministratorとは限らない、組織を回すひと)は役割coordinatorを持つ(が、役割purchaserを持たない。ここ重要)。


実現方法:

上記Entity Referenceディスプレイにおいて

  • FILTER CRITERIAでユーザーをフィルタしない。
  • RELATIONSHIPSでPurchaserフィールドへのリレーションを作成。
  • CONTEXTUAL FILTERSでCustomer: Purchaserへのフィルタを作成。

     -> WHEN THE FILTER VALUE IS NOT AVAILABLE           -> Provide default value
               -> タイプ: User ID from logged in user
          -> EXCEPTIONS
               -> Exception value: 空欄
     -> WHEN THE FILTER VALUE IS AVAILABLE OR A DEFAULT IS PROVIDED           -> Specify validation criteria: オン
               -> Validator: ユーザー
                    -> Restrict user based on role: オン
                         -> Restrict to the selected roles
                              -> coordinator: オフ(ここがミソ
                              -> purchaser: オン
               -> Action to take if filter value does not validate: Display all results for the specified field

すなわち、逆にcoordinatorは認証されなかったために全選択肢を提示されるということになります。ちょっとトリッキーです。

ハマり点:


  • はじめ、Entity Referenceディスプレイを2つ作って、片方のAccessを役割coordinator、もう片方のAccessを役割purchaserとしました。Pageディスプレイはこの方法で、アクティブユーザーの役割に応じて振り分けてくれますので。しかしEntity Referenceディスプレイはこの方法ダメなんですね。ディスプレイのMachine Nameがいちばん若いヤツだけをしか見てくれません。Entity Referenceモジュールバージョン7.x-1.1です。もうちょっとバージョン行ったらいつのまに直されてくれそうな気もします。
  • FILTER CRITERIAでもあれこれ苦戦してみましたがダメでした。
  • Provide default valueのUser ID from URLとかRaw value from URLでURLの実パラメタを読ませようとしましたが、administratorじゃないひとが編集画面へ行くとURLの実パラメタが消えてしまうのでありました。


したがって上記実現方法は僕の4つめのアプローチにしてようやく成功した方法です。1日つぶれました。この記事がお役に立って皆様の1日が潰れませんように :)


きょうでDrupal使いはじめて2週間です。

2015年7月9日木曜日

Drupalでログイン中ユーザーを表示する

「ようこそ○○さん」みたいなのをDrupal 7でコード1行も書かずページ上に表示させる方法の覚書です。

http://drupal.stackexchange.com/a/103902
のパクりです。


  • ビューを作る。
  • そのブロックディスプレイを作る。
  • フォーマットをUnformatted listにする。
  • 表示をFieldsにする。
  • FIELDSにユーザー: 名前を追加。
  • FILTER CRITERIAはなし。
  • Accessは役割でauthenticated userとする。
  • CONTEXTUAL FILTERSにユーザー: Uidを追加。そのWHEN THE FILTER VALUE IS NOT AVAILABLEでProvide default valueを選択し、そのタイプとしてUser ID from logged in userを選択。


こうしておいて、このブロックをページ上のどこかのリージョンに割り当てて、あと表示の微調整をするとよいでしょう。

ウチのサイトに実際にこの方法で実装しました。
(Accessは役割でauthenticated userとしていますのでログインしないと表示されませんすみません ^^;)

それにしても、
Drupalすごいっす。
オモテのサイトをそこそこに、生産管理システム組んでるとこなんですが、オモテ含めてここまで1行たりともコード書いてません。

  • データのリレーショナルはエンティティ参照で。
  • お客さんごとに見せる選択肢の絞り込みはビューのエンティティ参照ディスプレイで。
上記のアプローチで、やりたいことがイメージどおりバッチリ実装できてます。
どんどん実装できていくので気持ちいいです。
どこまでコード書かずにDrupal wayでいけるかチャレンジって感じっす。

「そのシステム開発、Drupal上だったらコスト10分の1でできますよ?」
ってのが煽りじゃなくマジで言えそうな案件けっこうありそう。

松田聖子『きみだけのバラード』は稀代の名曲だが、松田聖子のオリジナル曲ではない

『きみだけのバラード』
を松田聖子が歌った映像に接して、そのとりこになった方ならわかっていただけるとおもうんですけど、

この音源ってないんっすよーーー!!!

しかもあまつさえ、UGAでJohn O'Banionをさがしてもない。I Don't Want To Lose Your Loveをさがしてもない。ドンだけマイナー曲を当時松田聖子はピックアップしたんだよという…。

カラオケで歌おうとしたけど、UGAでさがしてもなかったので、今日は挫折しました。。。。


カラオケにない歌をうたいたいならば、もうあとは、誰かに演奏してもらうしかないっすかね。。。!!!!!

2015年7月8日水曜日

カンボジアでSlackを導入したらテンションがあがった

Slackいいね~ということは世界じゅうで言われておりますのでそれらをここで繰り返す気はありませんが、遅蒔きながらカンボジア大六でも社内導入いたしまして、


  • クメール文字と英数・和文が同じ大きさで表示される


これがすばらしいですね!

ってすごいあたりまえのことですけど、それがSkypeチャットではいまだにできないというダサさでありました。

Slackに社員を登録するには、各社員のメアドが必要ですが、それはさくらVPSに先日立てたメ鯖(〆鯖に非ず)で人数分デッチあげました (^^
デッチあげたといっても、ちゃんと世界に通用するふつ~にメアドですよ!

今のところとりあえず


  • #cut …切り抜きの部屋
  • #dtp …DTPとトレースの部屋
  • #hi …みやもとさんの部屋
  • #work …その他仕事の部屋(元#general)
  • #leng …遊びの部屋(元#random)


という5部屋を作ってあります。lengはクメール語で遊びとかいう意味です。社員たちにとってもfbの延長のテンションでできるので良いですね。

2015年7月4日土曜日

いまだにどっちが正しいスペルかわからないクメール語単語2つ

អាគារとអគារって両方見るけどどっちでもいいのですか?
tovnahにも両方載っているし…。
タイ語อาคารから察するとអាគារのほうが正しいかな?
でもអគារ表記もほんとよくみます。


ផ្ញើとផ្ញើរも両方見るけどどっちでもいいのですか?
これはtovnahにはផ្ញើしか載ってないけど…。
社内チャットで、お客さんへ仕事を送る、とか、社内で資料を送る、みたいなときに多用する言葉なので、そのたびに、រ付けたものか付けまいものか迷います。

どなたか、教えてくださーい!!!

未読既読を気にしあうのは日本特有? けしからんミニスカ事務女子たちがSlackに出会った。

http://elasticneko.tumblr.com/post/123111124426/slack
事務の女子達がSlackを使った感想

という記事。トップの四天王ミニスカ脚組みのあおり構図が大変けしからんです。

開封確認がないので不便、という感想がなんか日本っぽいとおもいました。
Slackの開発陣は、いろいろユーザーの要望を積極的に取り入れていくという姿勢が著しいわけですが、それでも開封確認の機能はない。
日本でLINEとかでよく人間関係のうえで問題になっている、いわゆる未読スルーとか既読無視といことが発生しようがないわけですね。

そういうの、英語圏ではあんまし気にするひといないのかもしれませんね。

ちなみに僕は向かっていちばん右です