SQLの窓

2010年01月03日


Ruby : ココログギャラリーの設定から、Ruby の基本処理

関連する記事
Ruby : ココログアルバムの一括設定


チェックボックスのように、設定されない CGI の変数は、nil になります。
また、比較の仕方は直接比較演算でいいようです。とにかく、完全なマニュアル
が見当たらないので、細かいところは試すしかなく、サンプルが有用です。

if は、then を使用していますが、文法が以下のようになつているので書いています

--------------------------
if 式 [then]
  式 ...
[elsif 式 [then]
  式 ... ]
...
[else
  式 ... ]
end
--------------------------

またこうも書かれています
--------------------------
Ruby では false または nil だけが偽で、それ以外は 0 や空文字列も含め全て真です。 
--------------------------

つまり、条件部分に値だけを書くと予想外の結果になる可能性があります
#!/usr/local/bin/ruby
print "Content-Type: text/html; Charset=shift_jis\n\n";

require "cgi"
cgi = CGI.new

ENV['GEM_HOME']="/home/lightbox/gems"
$LOAD_PATH.push('/home/lightbox/lib')

require 'rubygems'
require 'mechanize'

agent = WWW::Mechanize.new
#@nifty にログイン
page = agent.get("https://login.nifty.com/service/login")
form = page.forms.first
form["username"] = cgi['username'][0]
form["password"] = cgi['password'][0]
page = form.submit

# 対象ギャラリーの設定ページ
page = agent.get('http://app.cocolog-nifty.com/t/app/gallery/configure?set_id='+cgi['gid'][0])

# 設定ページ
page = agent.get('http://app.cocolog-nifty.com/t/app/gallery/configure?set_id='+cgi['gid'][0]+'&nwsThough=1')

form = page.forms.first

# ギャラリー名
if cgi['name'][0] != '' then
	form["name"] = cgi['name'][0]
end

# ブログのサイドバーに表示する
if cgi['is_public'][0] == nil then
	form.checkbox_with(:name => 'is_public').uncheck 
else
	form.checkbox_with(:name => 'is_public').check 
end

# 写真のサムネイル横列数
if cgi['num_columns'][0] != '' then
	form["num_columns"] = cgi['num_columns'][0]
end

# サムネイルを正方形に揃える
if cgi['crop'][0] == nil then
	form.checkbox_with(:name => 'crop').uncheck 
else
	form.checkbox_with(:name => 'crop').check 
end

# サムネイルのサイズ
case cgi['combo1'][0]
when '1'
	form.radiobuttons_with(:name => 'thumb_size')[2].check 
when '2'
	form.radiobuttons_with(:name => 'thumb_size')[1].check 
when '3'
	form.radiobuttons_with(:name => 'thumb_size')[0].check 
end

# 写真の表示サイズ
form.field_with(:name => 'full_size').value = cgi['combo2'][0]

result = form.submit

#print result.body
print 'ココログ : アルバムの設定の更新を終了しました';






posted by lightbox at 2010-01-03 00:37 | Ruby | このブログの読者になる | 更新情報をチェックする

2010年01月02日


JavaScript : クッキーの表示

読み出しは単純なので デベロッパーツール で試してみるといいと思います
<script type='text/javascript'>
function scriptTest() {

	var arr = document.cookie.split(';');
	var str = "";
	for(var i=0;i < arr.length; i++ ) {
		arr[i] = decodeURIComponent(arr[i]);
		arr[i] = (arr[i]).replace(/\+/g," ");
		str += (arr[i]).replace(/^\s+/,"") + "\n";
	}
	if ( str.replace(/\s+/g,"") == "" ) {
		alert("クッキーはありません");
	}
	else {
		alert(str);
	}

}
</script>
<input type='button' value='GO' onClick='scriptTest()'>

関連する記事

デベロッパーツールを使用してクッキーの一覧を表示する


posted by lightbox at 2010-01-02 16:27 | JavaScript | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します
container 終わり



フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

CSS ドロップシャドウの参考デモ
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり