BBS の改良
チャットと掲示板を融合したような環境を作りたいなと。ご意見くだされ。
このまま記事を入力し[投稿する]ボタンを押せば当サイトに送信されます。
以下の文章は注意書きです。
名前はかならず記入してください。ハンドルネームでも構いません。
またパスワードを入力することをお勧めします。
その場合他人による *なりすまし* と区別出来るかもしれません。
さらにブラウザでクッキーを有効に設定してある場合あなたの記事は後で修正可能になります。
コメントスパム防止のため記事の内容を機械的にモデレート
(スパムである確率を計算)
する処理を通します。
どのような投稿であれ、たまたま計算誤差によりスパムとみなされ
秘密の場所
に収納される可能性があります。
その場合、管理人が手作業で正規の場所に移動しますのでお待ちください。
-
22
owa
2003/04/09 17:09
id: MX7c9OHBZ.E
prob: 0.7%
-
-
ソースは
http://owa.as.wakwak.ne.jp/zope/ZEXP の中の getQuotedHtml.zexp です
名前変えてしまってすいません。事情があって;;
-
21
owa
2003/04/09 17:03
id: MX7c9OHBZ.E
prob: 6.0%
-
-
とりあえず第1版
---
retst = ''
lines = string.split(Comment, '
')
for row in lines:
n = len(row)
row = string.lstrip(row)
n = n - len(row)
if n > 0:
retst = retst + ' ' * n
tokens = string.split(row)
for st in tokens:
if serch_http(st):
#st = url_quote(st)
retst = retst + '<a href="' + st + '">' + st + '</a>' + ' '
else:
retst = retst + html_quote(st) + ' '
retst = retst + '<br>'
return retst
---
今組み込みました
-
20
kiyo
2003/04/09 16:31
id: SEQMDPWg1rE
prob: 0.3%
-
-
御免
_.getitem(comment)→_.getitem('comment')
「'」が抜けてた
僕の頭と一緒で
#<dtml-var "http_quotepy(_.getitem('comment'))">と一行に変更
#retst = retst + '<a href="' + st + '">' + st + '</a>'
#かっこ悪いので
# retst = retst + '<a href="%s">%s</a>' % (st,st)へ変更しました
# return printedは return retstへ
-
19
owa
2003/04/09 15:18
id: MX7c9OHBZ.E
prob: 3.3%
-
-
>>18 keyErrorがでるんです
<dtml-var expr="http_quotepy(httpst)"> の expr= が抜けているからとか?
P.S.
↓ちょっと直しています。
-
18
kiyo
2003/04/09 14:06
id: SEQMDPWg1rE
prob: 13.6%
-
-
こんなん作ったけど
http_quotepy
--------
parameter
Comment
--------
from Products.PythonScripts.standard import html_quote
import string
HTTP_ST = 'http://'
FTTP_ST = 'ftp://'
def serch_http(st):
OK = 0
if string.find(string.lower(st),HTTP_ST) != -1:
OK = 1
if string.find(string.lower(st),FTTP_ST) != -1:
OK = 1
return OK
retst = ''
linest = string.split(Comment)
for st in linest:
if serch_http(st):
retst = retst + '<a href="' + st + '">' + st + '</a>'
else:
retst = retst + html_quote(st)
print retst
return printed
---------
これをShowPersonList内で
<dtml-let httpst="_.getitem(comment)">
<dtml-var "http_quotepy(httpst)">
</dtml-let>
で呼び出してもkeyErrorがでるんです。
なぜ? # scriptだけのテストはOKなんですが
# この後に見つけた これ見て難しくなかったと言っていた!
# from Products.PythonScripts.standard import structured_text
# return structed_text(Comment)とか使うのですが、
# http://xxx.comはうまくいかなかった [kiyo]とかはOK
# ちなみにこデもあり、
# from Products.PythonScripts.standard import newline_to_br
# from Products.PythonScripts.standard import url_quote
# from Products.PythonScripts.standard import thousand_commas 3行ごとカンマ
-
17
おわ
2003/04/09 11:14
id: uCoMSHAry3Q
prob: 0.3%
-
-
>>16
忘れてたけど自動改行も付けようかと思ってました。
DBにしまう時は生のままで、表示の時だけ。
一応メールのことも考慮して 70 行くらいで。
-
16
kiyo
2003/04/09 10:44
id: SEQMDPWg1rE
prob: 0.1%
-
-
>>15
な〜るへそ #質問して寝ている失礼な奴です>自分^^;
>>8 b. ソースリスト載せてくれたのにタブもブランクも圧縮されてめちゃくちゃ。
style="white-space: pre;"を入れて実験した
改行なしで投稿された文章がある場合横スクロールバーがでて読みにくい
-
15
おわ
2003/04/09 01:23
id: uCoMSHAry3Q
prob: 11.0%
-
-
addNewpy で
---
if Comment=='':
RESPONSE.redirect(retHTML + '&formError=1')
---
して、addNewForm.dtml で
---
<dtml-if expr="REQUEST.has_key('formError') and formError=='1'">
エラー
</dtml-if>
---
したんですが
-
14
おわ
2003/04/09 01:11
id: uCoMSHAry3Q
prob: 4.9%
-
-
>>13 SESSIONに保存したのかな?
不味かったかな?
-
13
kiyo
2003/04/09 01:05
id: SEQMDPWg1rE
prob: 0.8%
-
-
>>10 空の投稿の件で少しだけ改良しました
試してみました。
SESSIONに保存したのかな?
|