Category: 自作のcgiやphp


Mail.app用 同報メール作成AppleScript (2) ファイル添付バージョン

2011-8-11 — 8:49pm

以前に紹介した,Mail.app用 同報メール作成 AppleScriptのファイル添付バージョンです。

スクリプトのダウンロードはこちら→[mail_merger_attach.zip] 16KB

AppleScriptを実行する前にすること。
1)AppleScriptを開く。添付ファイルの場所を指定し,AppleScriptを保存し直す。
2)メールのテンプレートファイルを作る。(見本ファイルは,zipファイルの中)
3)宛先ファイルを作る(見本ファイルは,zipファイルの中)

– Mail 添付ファイル付の同送/同報メール作成用 AppleScript


– 【1】テンプレート テキストファイル (Mac形式:SJIS, 改行CR)

– 1行目:サブジェクト
– 2行目:%affiliation%  ← 所属
– 3行目:%name% 様    または, Dear %name%, (%name%に名前を差し込む)
– 4行目以降: 本文 自由

– 【2】 宛先用 テキストファイル  (Mac形式:SJIS, 改行CR)
– アドレスと氏名の間は”, ” [カンマ1個とスペース1個]
– 例)
– 1行目:aaa@aaa.com, 南野何子, 所属, 添付ファイル1
– 2行目:bbb@bbb.co.jp, 何乃何夫, 所属, 添付ファイル2


– 「添付ファイル名」は、1行に1個だけ記入できる。
– 例)
– aaa@aaa.com, 南野何子, 所属, file1.pdf
– bbb@bbb.co.jp, 何乃何夫, 所属, file2.doc など

– Written 2011.1.24, by TanakaA
– Modified 2011.8.11 by TanakaA

– 【3】重要 次の行、添付ファイルを入れたディレクトリのパスを書き換える –

property attPath : “Macintosh HD:Users:YOUR-ID:Documents:ATTACHMENT-DIR:” — 添付ファイルを入れたディレクトリ。

– 例 property attPath : “Macintosh HD:Users:YOUR-ID:Documents:ATTACHMENT-DIR:”
– パスは、ハードディスクから添付ファイルを入れたフォルダー名まで。最後に “:” 。

property TextDelim : “%” — フィールド名を挟むための文字列、デリミタ− (テンプレートファイルで使う)

on run
– テンプレートファイルを読み込む
set aFileName ¬
to (choose file with prompt “テンプレートファイルを選んでください”) as text
set fh to open for access file aFileName without write permission
try
set aTemplate to read fh as string
on error errmes
close access fh
error errmes
end try
close access fh

–テンプレートをサブジェクトと本文に分ける
set strSubject to paragraph 1 of aTemplate
set bodyTemplate to “”
repeat with pg in (paragraphs 2 thru end of aTemplate)
set bodyTemplate to bodyTemplate & pg & return
end repeat

–set theAttachment to choose file
–print theAttachment

– テンプレート本文をデリミタで分解してaListTempに書き出す
set aDelim to AppleScript’s text item delimiters
set AppleScript’s text item delimiters to TextDelim
set aListTemp to every text item of bodyTemplate
set AppleScript’s text item delimiters to aDelim

– aListTempの配列のサイズ aListTempCount
set aListTempCount to (length of aListTemp)

– 宛先ファイルを読み込む
tell application “Finder”
try
–set AppleScript’s text item delimiters to TextTab
set AppleScript’s text item delimiters to {“, “}
set Names to paragraphs of (read (choose file with prompt “宛先ファイルを選んでください”) as string)
repeat with nextLine in Names
if (the length of Names) is less than 1 then
display dialog “No items found in file.” with icon caution
return
end if
copy (the length of Names) to NamesCount –NamesCount:宛先総数
end repeat
end try
end tell

repeat with i from 1 to (NamesCount – 1)

– テンプレートに相手の所属と氏名を差し込む
set strMessage to “”
set strBodyMes to “”
set strBodyAtt to “”

repeat with j from 1 to aListTempCount

–set NamesItemCount to item i of Names

– %name% に氏名をセット
if item j of aListTemp = “name” then
if text item 2 of (item i of Names) is not “” then
set strMessage to strMessage & text item 2 of (item i of Names)
end if

– %affiliation% に所属をセット
else if item j of aListTemp = “affiliation” then
if text item 3 of (item i of Names) is not “” then
set strMessage to strMessage & text item 3 of (item i of Names)
end if
else
set strMessage to strMessage & item j of aListTemp
end if
end repeat

– 本文に改行を付ける
repeat with pg in (paragraphs 1 thru end of strMessage)
set strBodyMes to strBodyMes & pg & return
end repeat

–  strBodyAtt に添付ファイルのパス をセット
if text item 4 of (item i of Names) is not “” then
set strBodyAtt to attPath & text item 4 of (item i of Names)
end if

–メール作成
tell application “Mail”

set addrVar to text item 1 of (item i of Names) — 相手のメールアドレス
–set addrNameVar to text item 2 of (item i of Names) — 相手の氏名

– 新規メール Subject, ボディメッセージ 指定
set theMessage to make new outgoing message with properties {subject:strSubject, content:strBodyMes}

– Toアドレス, 添付ファイル
tell theMessage
make new to recipient with properties {address:addrVar}
make new attachment with properties {file name:strBodyAtt as alias}
end tell

–下書き保存
save theMessage
end tell

if i is equal to NamesCount then
break
end if
end repeat

– Mail アプリを前面に出す
tell application “Mail”
set visible of theMessage to true
activate
end tell
end run

Comment » | 自作のcgiやphp, 自作のScript

Safari to Mail(Safariで選択したテキストをMailに送るAppleScript)

2009-1-11 — 1:58pm

Safariで選択したテキストを,Mailの新規メールの本文にペーストする自作AppleScript
Safariで表示したスケジュールやアドレスを,Mail.appのアドレスやスケジュール自動登録機能に渡すのに便利だと思います.


使い方.
1. AppleScriptアプリケーション「safari-text-to-mail.app」を~/Library/Scriptsなどの適当な場所に入れておく
safari-text-to-mail.app.zipをダウンロード)
(AppleScriptをメニューバーから起動させるため,「アプリケーション」→「AppleScript」→「AppleScript ユーティリティ.app」で「メニューバーにスクリプトメニューを表示」にチェックを入れておく)
2. Safariの画面で,コピーしたいテキストを選択する
(例)
1.jpg
3.safari-text-to-mail.appを実行する
4.少し待つと,Mailの新規メール編集画面に切り替わり,メール下書きの本文にはSafariで選択したテキストがペーストされている.
(ただし,Safariでテキストを選択していなければ,何も起こらない.)
5. 後は,ご自由に
(スナップショットの例:Safariから送ったテキストで生成されたMail.appのメール下書きを,Mailのメッセージビューアの画面で表示し,スケジュールデータをiCalに自動登録しようとしているところ.)
2.jpg 


safari-text-to-mail: スクリプトの中身
tell application “Safari”
set theSelected to do JavaScript “unescape(getSelection())” in document 1
set theURL to URL of front document
set theSource to source of front document
set AppleScript’s text item delimiters to “title>”
set theSource to second text item of theSource
set AppleScript’s text item delimiters to “</”
set theTitle to first text item of theSource
end tell
set theSelected to theSelected as Unicode text
if theSelected = “” then return “No document selected”
tell application “Mail”
set accountAddresses to (email addresses of first account)
set theMessage to make new outgoing message
set subject of theMessage to theTitle
set content of theMessage to theSelected & return & return & “[Source]” & return & theTitle & return & theURL & return & “—–” & return
set visible of theMessage to true
activate
end tell


参考:
An AppleScript to email Safari URLs with titles via Mail
Safariの選択部分のテキストを取得する

2 comments » | MacOS X, 自作のcgiやphp

PHP テキストカウンター (ユニークホスト数をカウント)

2006-8-6 — 12:34am

ユニークホスト数で,毎日の訪問者数をカウントします.
日付が変わると,ホスト記録をリセットして新たにカウントを始めます.
Total (総数), Today (本日), Yesterday(昨日)の数字を,それぞれテキストで表示します.
私の希望にジャストフィットのスクリプトが見あたらないので,久しぶりに自作してみました.


使い方 はファイルの中を参照してください.
ファイルをダウンロード
at_cnt_php.zip Ver.2 2007.2.12
(4376 byte, 文字コード UTF-8, 改行コード LF)

2 comments » | 自作のcgiやphp

特定のカテゴリーだけに画像やテキストを表示する

2005-8-27 — 12:11pm

MovableTypeの特定のカテゴリー・アーカイブのページだけに、画像やテキストを表示するphpスクリプト。


必要なMovableTypeプラグイン:MTCategoryOfArchive

<MTCategoryOfArchive><MTCategoryID></MTCategoryOfArchive>

カテゴリーアーカイブにはめ込む phpスクリプトの例

<? // 特定のカテゴリーアーカイブのページだけに、画像やテキストを表示する

// 設定 (↓ 999のところに、対象のカテゴリーIDを調べてセットする)
$cat_target = “999″;

// 出力文字列の定義
$out_txt1 = ‘<a href=”http://なにやら” title=”なんとか”>’;
$out_txt2 = ‘<img src=”http://なにかの.jpg” alt=”あれこれ” />’;
$out_txt3 = ‘</a>’;

// 判定
$cat_given= “<MTCategoryOfArchive><MTCategoryID></MTCategoryOfArchive>”;

//

if ($cat_given == $cat_target) {
echo $out_txt1;
echo $out_txt2;
echo $out_txt3;
};
?>

Comment » | 自作のcgiやphp

分からない @@

2005-2-5 — 8:57pm

自分で作ったスクリプトをフリーで公開するのは、自分がそれでいいのならOKだ。
どなたかがお書きになったスクリプトがフリーなら、システムの実情に合わせてこう直したんです、とオリジナルがあることを明らかにして公開するのもOKだと思う。
だけど、私のスクリプトのコピーをご自分のページでご紹介なさり、私のページにコメント&トラックバックを置いて行かれても、そういう行動はワケがわからない〜。
その人のオリジナリティはどこにあるんでしょ?  …行動規範はそれぞれ違うだろうけど、ワケがわからない〜。
…「再配布はしないで下さい」 とあちこちで見かけるけど、それを書く気持ちが分かったよ〜。 

2 comments » | 自作のcgiやphp

Quote ささやかなPHP

2004-9-4 — 11:03am

これは、テキストファイルを読み込み、その中の1行をランダムに選んで表示するスクリプト。


Quote(格言)集の表示用のcgiが、php移行で使えなくなったので作ってみた。
お願い: 無断で再配布はしないで下さい (2005.1.5)

<? // quote read & write
//設定 読み込むファイルの指定 rootから指定する。urlでもいいかもしれないが未確認
$filename=“/home/www.dokokano.jp/users/yourroot/public-html/quotes.txt”;
//以下は手を付けない
if (!($fno2 = fopen($filename, ‘r’))) {
die;
}
$cont2=0;
while (!feof($fno2)) {
$rec2 = fgets($fno2);
$array2[$cont2] = $rec2;
$cont2 = $cont2 + 1;
}
fclose($fno2);
srand ((float) microtime() * 10000000);
$rand_keys2 = array_rand ($array2, 1);
$array2[$rand_keys2];
echo $array2[$rand_keys2];
?>

Comment » | 自作のcgiやphp

Back to top