wa - NucleusやFlashなどなど

RSS

Home > Nucleus > Page.2

«Prev || 1 | 2 | 3 |...| 16 | 17 | 18 || Next»
09.13 '08

1ファイルで済む、プラグインの多言語対応

合宿中の思いつきだったんですが、意外と便利っぽいので記事にしてみることにしました。

せっかく1ファイルで済んでいるプラグインが、多言語化のためだけに複数ファイルとなってしまうのは、もったいない。
ということで、こんな感じでどうでしょうか。

プラグインファイルは、UTF-8で書きます。(EUC版で使う場合でも)
で、以下のようなメソッドを用意しておいて、必要に応じて呼び出します。
下記例では、EUC版、UTF-8版、英語版の3つに対応していますが、別の言語を追加するのも簡単です。
/**
 * マルチランゲージ定義(このファイルはUTF-8 BOMなし)
 */

function defineMultilanguage()
{
  //ここに定義
  $multilang = array(
    '_DEFINE_LANGUAGE'    => array('English''日本語'),
    '_DEFINE_GOODMORNING' => array('Good morning''おっはー'),
    '_DEFINE_APPLE'       => array('apple''林檎'),
  );
  
  switch (ereg_replace('[\\|/]''', getLanguageName()))
  {
    case 'japanese-euc':
      foreach ($multilang as $key => $valuedefine($keymb_convert_encoding($value[1], 'EUC-JP''UTF-8'));
      break;
    case 'japanese-utf8':
      foreach ($multilang as $key => $valuedefine($key$value[1]);
      break;
    default:
      foreach ($multilang as $key => $valuedefine($key$value[0]);
  }
}

別になにも変わったことしてないので、すでにやってる人もいる気がします。(あえてループの外でスイッチしてます)
09.09 '08

カレンダー型日付入力インターフェイス NP_yuiCalendar

yuiCalendar アイテム投稿で、日付をグラフィカルなカレンダーから入力できるようにします。

...続きを読む

08.28 '08

合宿から帰って

いつの話しやねん、、、まとめ記事書いてませんでした。いや、もう、燃え尽きて、ぶっ倒れておりました。

合宿ってものを一度やってみて、「こうすれば良かったー」ってものが見えてくるわけで、”最初の合宿”(?)としては良かったのではないかと個人的には思ってます。でも、やっぱり成果の発表枠は確保しておいた方が良かったですね。合宿内で妹認証プラグインを出産・公開までできたセンセーにはビビリまくりです。

ブログで成果を書いている方もいるので、リンクはっておきます。
参加メンバーのブログ記事リンク集(順番は隊長から座席右回り)
隊長:Nucleus開発ガッチュク。その1
若:Nucleus 合宿
しづきさん:Nucleus開発合宿
やまさん:Nucleus開発合宿に参加しました
よたかさん:青春18切符残りの2枚(ナニする?さてナニしよう?)
Andyさん:Nucleusの開発合宿に参加しました
yuさん:Nucleus合宿
センセー:Nucleus合宿・第1夜
kalmさん(テーブル囲まれた中):Nucleus CMS Japan開発合宿

自分は何をやったかというと、、
  1. 半日近くの貴重な時間、壊れたパソコンと格闘orz
  2. NP_AddHandler
    • プラグイン名ではない名前のスキン変数を自由に追加できるようにするプラグイン。新幹線内で作ったけど、冷静に見るとゴミでした。(涙
  3. NP_SkinnableAdmin(管理画面も表スキンで自由に作成できるようにするプラグイン。iPhone用とかね。)
    • 管理ページをMVCモデルで実装するフレームワークの土台を用意してきましたので、プロジェクタ借りてざっくりと紹介
    • overviewアクションしか実装していなかったので、合宿中に上記フレームワークに基づきitemlistアクションを実装しました。
    • さて、管理ページは、いったいいくつのアクションがあるのだろうか、、それらすべてを実装するのに、あとどれくらいの日数がかかるのだろうか?
    • で、合宿後の課題は、分業(誰が?w)で実装作業ができるように、フレームワークのドキュメントを整備すること。
  4. 言語ファイル不要のマルチランゲージ対応構造
  5. NP_SameSubcat の要求仕様確認
  6. NP_PluginAdmin の構想(簡単管理画面実装)
  7. NP_PageSwitch テンプレート対応版 フォーラムにアップ

一番の成果は、
想像以上のスーパーサイヤ人達を生で見れた、、ってことかな。

AndyさんFoodyn CMSのプレゼン、すばらしかったです。Nested setや、RESTfulについての基本概念まで含めながらも短い時間にすっきりまとまった内容でした。脳の構造が違うんだろうなぁ、、どこまでもついていきますw

みなさま、お疲れさまでした。増版分と今回の残りで、またやりたいですねぇ。
08.24 '08

時間足りないなぁ

あ、、っという間に、合宿の終わりが見えてきました。
んーパソコン調子悪くて半日無駄にしたのが惜しい。

あと少し、さー何やる?
08.23 '08

ホテル到着

(写真はあとから差し込みます。)
東京駅では、改札出口ぢゃないところに切符入れて改札に怒られた。
うろちょろしてやっと出れたけど、新幹線内に地図忘れて呆然、、、としていたら、けつねはん発見。
みんなと合流して、無事、飲み会のお店に連れて行ってもらえました。

ホテル到着。ネットワーク不安定で苦戦。

さー、何やる
08.22 '08

おい! Nucleus開発ガッチュク。

明日、明後日と、東京でNucleus CMS Japan チームの開発合宿をやります。そんで今日は、前夜祭(?)で飲み会。
モバイル環境ないので、回線つながるところから更新したいと思います。

やりたいことリストには色々書いてあるんだけど、個人的には「管理画面を何とかしたい。」っていうのが形になれば良いなぁと。
AndyさんのFoodyn CMSも楽しみ。

さて、お昼ごはん食べたら出発!(名古屋名物買ってかないと。)
08.11 '08

osc2008名古屋、CMS大決戦に出陣(してきました)

osc2008nagoya
事後報告です。^^(ちゃんと事前に告知しなさい自分。
CMS大決戦参加してきました。
← 表彰の様子(一応、お顔はマスクしたのですが、逆に「そんなのするな」と言われそうな気がします。)
クチばっかり星人ですみません。よたかさん、関係者の皆様ありがとうございます。お疲れさまでした。

10のCMSが各10分のショートプレゼンを行い競っちゃおう。ってお茶目なセッション。
「大決戦」ってタイトルでビビっちゃってましたが、本当にみなさんアットホームな雰囲気で(日本人の気質なのかなぁ)、とっても楽しかったです。刺激になりました。
で、結果の方は、、無事(?)上位5組の中に入ることができました。。ギリギリ^^

じつは当日カメラを忘れちゃいまして、会場の様子を撮ることができませんでした。
それで、撮影されていた方にあつかましく「よかったらメールで送ってください!」とお願いしたところ、わけの分からない者のわがままにも関わらず、快くご承諾いただきまして写真を送っていただいたのであります。
しかも、何とNucleusをお使いとのことで、驚きました。(↓ ここでの紹介もOKいただきました。)
:link:TomnekoSoft.com :: Firebird RDBMSの情報
:link:Tomneko blog
本当にありがとうございました。

あと、、
CodeIgniter(PHPフレームワーク)セミナー(書籍購入時、領収書受取忘れたのがショック)、Geeklogセミナーも面白かったです。当日全体の入場者数は400人を超えていた様子で、とても盛り上がっていました。昔からよく、”名古屋は何をやっても盛り上がりにかけるので、「名古屋飛ばし」”なんて言われてましたが、最近は関係なくなってきてるのかしらん。
名古屋でも、いろいろなイベントがもっと盛んになるとうれしいなぁ。

(p.s. MODxにも投票したかったのは内緒)
07.23 '08

NP_AdminSkin 構想

重度の英語アレルギーなので、Nucleus本家の動向はまったくチェックできていませんが、結構古くから、「Skinnable Admin Area」の話が出ているんですよね。前進してるかどうかはノーチェックなのでわかりません。正直あんまり気にならないのは何故って話はおいといて^^

Twitterで話しに出た、「表スキンで管理ページ」について。

以前、CMSに不慣れな運営者のために、管理画面の一部の機能(ユーザ管理など)を表スキンに実装したことがあって、もうちょっと煮詰めれば 「Skinnable Admin Area」 を実装できるのではないかと、、ちょうど合宿ネタにもピッタリなんじゃないかということで、土台を作り始めました。

Nucleusの管理ページの構造

admin

pagehead()メソッドにハードコードされたhtmlを出力
次に、各actionの結果を出力(各actionの結果もハードコードされている)
最後に、pagefoot()メソッドにハードコードされたhtmlを出力

ちなみに、NP_znCustomAdminってプラグインではハードコードされている、pagehead()、pagefoot()、のhtmlを差し替えています。

NP_AdminSkinの構造

AdminSkin

新設したスキンタイプ「admin」の内部の<%AdminSkin(main)%>と記述した箇所に、各actionの結果を出力します。
更に、各actionの結果は、個別のテンプレートファイルを読み込みます。





実際には、ヘッダ内のextraheadや、クイックメニューの構造もあるのですが、おおまかには上記のようなイメージになります。
あと、細かい部分では、

ということで、ExtJSデスクトップ版new Adminは、当面放置の予定^^
07.02 '08

旧版adminテンプレートを、v0.64以降のNP_znCustomAdminに対応させる方法

世界中で、ただ一人に向けた投稿です。ドキュメントに書いたつもりでいました。しづきさんすみません。

スキン・テンプレートの「読込/書出」から、旧版のadminテンプレートをファイルに書き出して、、
    <part name="STP_PLUGINNAME"><![CDATA[NP_znCustomAdmin]]></part>
をtemplateノードの下に追加
それを、「読込/書出」から、読み直してください。
NP_znCustomAdminと、NP_znSpecialTemplatePartsで使用できるようになっていると思います。(記憶が確かなら。。
06.24 '08

Nucleus スマイリープラグイン NP_znSmiley ver1.15

znSmiley アイテム・コメント内で、スマイリーアイコンを使えるようにするプラグインです。
アイコンは、管理ページで簡単に追加・変更することができます。

バージョンアップしてたのですが、公開するのが遅れちゃいました。
変更点は、
です。
NP_znSmiley解説ページからダウンロードできます。(この記事で紹介しているver1.15が最新版です。)
«Prev || 1 | 2 | 3 |...| 16 | 17 | 18 || Next»
PluginGenerator znBackup znItemFieldEX znCustomAdmin znBackup znSmiley znShowDraft yuiCalendar znSpeedCubing znKeywordLink znCommentRSS znCCitation znItemParts znMCList znHatenaExist znQuestionnaire znFlash