件名: Geeklog 2.13 moblog プラグイン 

投稿日: 03/21/19 05:31 PM JST
投稿者: daioh_

2.1.3にインストールOK

管理ページのプラグインから モブログの環境整えようとしたら
こんなエラーが

If this is a production website you must disable this option once you have resolved any issues you are investigating.

E_WARNING(2) - Declaration of MoblogStory::loadFromArgsArray(&$array) should be compatible with Story::loadFromArgsArray(array &$array) @ /var/www/virtual/○○/○○/plugins/moblog/moblog_story.php line 0

Call Stack
# Function File Line
1 require_once /var/www/virtual/○○/○○/plugins/moblog/moblog.php 53
2 require /var/www/virtual/○○/○○/moblog/index.php 31


PHP7で使用できないライブラリがあるのかな?

それか2.13で記事のテーブルが増えた?

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/21/19 05:33 PM JST
投稿者: Ivy

モブログプラグインは、記事のテーブル構造も変わっており、話題の構造も大きくかわっているため、かなり手を加える必要があります。
また、PHP7の対応はしていないのでそこも自力解決が必要ですね...

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/21/19 07:53 PM JST
投稿者: daioh_

PHP7で使用できないライブラリがあるのかな?

それか2.13で記事のテーブルが増えた?


両方でしたか・・・・
ちょっとハードル高いので様子見します

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/22/19 01:28 PM JST
投稿者: terayama

とりあえず このエラーは should be compatible なので
MoblogStory::loadFromArgsArray(&$array) を
MoblogStory::loadFromArgsArray(array &$array) とすれば通るのではないでしょうか

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/22/19 04:25 PM JST
投稿者: daioh_

ありがとうございます

エラーが変わりました

(0) - syntax error, unexpected 'new' (T_NEW) @ /var/www/virtual/○○/○○/plugins/moblog/include/qdmail_receiver.php line 1336

Call Stack
# Function File Line
1 COM_handleException
array(1) {
[0]=>
array(3) {
["file"]=>
string(50) "/var/www/virtual/○○/○○/moblog/index.php"
["line"]=>
int(31)
["function"]=>
string(7) "require"
}
}

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/22/19 06:48 PM JST
投稿者: daioh_

qdmail_receiver.phpの 1336行目を

$obj = & new $class_name($param);


php7では新しいオブジェクトを参照渡しで代入ができないらしいので

&を取ったらとりあえず動いている模様

$obj = new $class_name($param);

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/22/19 06:50 PM JST
投稿者: daioh_

POP3メールサーバーの設定でつまづいてます

ホスト名  pop3メールサーバ?
ユーザーID モブログメールアドレス
パスワード モブログメールパスワード
ポート番号  110(標準のまま)



書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/22/19 10:17 PM JST
投稿者: Ivy

どこからのメールを受け付けるのか、という設定ですので、モブログ専用のメールアカウントを作成してそれを指定してください。

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/23/19 07:43 PM JST
投稿者: daioh_

ホスト名  localhost
ユーザーID モブログメールアドレス
パスワード モブログメールパスワード
ポート番号  110

でいちおう POP3関連はOKになりました

違うエラーが・・・・
(0) - Call to undefined method Story::Story() @ /var/www/virtual/○○/○○/plugins/moblog/moblog_story.php line 45

Call Stack
# Function File Line

array(3) {
[0]=>
array(6) {
["file"]=>
string(64) "/var/www/virtual/○○/○○/plugins/moblog/moblog_story.php"
["line"]=>
int(748)
["function"]=>
string(11) "moblogStory"
["class"]=>
string(11) "MoblogStory"
["type"]=>
string(2) "->"
["args"]=>
array(0) {
}
}
[1]=>
array(4) {
["file"]=>
string(58) "/var/www/virtual/○○/○○/plugins/moblog/moblog.php"
["line"]=>
int(556)
["function"]=>
string(18) "MOBLOG_submitStory"
["args"]=>
array(1) {
[0]=>
array(22) {
["uid"]=>
string(1) "2"
["tid"]=>
string(7) "General"
["sid"]=>
string(17) "20190323193534998"
["title"]=>
string(29) "=E3=83=86=E3=82=B9=E3=83=88?="
["introtext"]=>
string(189) "<div class="moblog_text">
テスト<br /><br />ああああああああああああああああああ<br /><br />あああああああああああああああああああああああ</div>
"
["bodytext"]=>
string(0) ""
["postmode"]=>
string(4) "html"
["publish_year"]=>
string(4) "2019"
["publish_month"]=>
string(2) "03"
["publish_day"]=>
string(2) "22"
["publish_hour"]=>
string(2) "20"
["publish_minute"]=>
string(2) "03"
["publish_second"]=>
string(2) "41"
["owner_id"]=>
string(1) "2"
["group_id"]=>
string(1) "3"
["perm_owner"]=>
int(3)
["perm_group"]=>
int(2)
["perm_members"]=>
int(2)
["perm_anon"]=>
int(2)
["draft_flag"]=>
int(0)
["frontpage"]=>
int(1)
["show_topic_icon"]=>
string(1) "0"
}
}
}
[2]=>
array(4) {
["file"]=>
string(50) "/var/www/virtual/○○/○○/moblog/index.php"
["line"]=>
int(42)
["function"]=>
string(18) "MOBLOG_execProcess"
["args"]=>
array(0) {
}
}
}


テストメールの内容は入ってるようなので いよいよテーブルかな?

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/23/19 07:45 PM JST
投稿者: Ivy

そうですね。
PHP Formatted Code
["tid"]=>
string(7) "General"
 
これは、gl-topic-asignment に登録することになり、storyのテーブルには保存しません。

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/24/19 03:23 PM JST
投稿者: terayama

undefined method Story::Story() ですので・・・
classes/story.class.php ありますか?

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/24/19 11:45 PM JST
投稿者: terayama

xreaに2.2JP IVYWE版をセットしてmoblogいれてみたところ
違ったエラーがでました
E_WARNING(2) - require_once(/virtual/**/private/**/system/lib-story.php): failed to open stream: そのようなファイルやディレクトリはありません @ /virtual/**/private/**/plugins/moblog/moblog.php line 52
lib-story.php 自体なくなってますね

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 01:53 PM JST
投稿者: terayama

2.1.3日本語開発版をセットしてmoblog入れてみました
先のエラーは
moblog.story.php の 45行目
// parent::Story();
parent::__construct();
に修正すれば通りますが また別のエラーがでますね


書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 02:20 PM JST
投稿者: terayama

story.class.php 
// private function _loadBasics(array &$array) を
public function _loadBasics(array &$array)

moblog_story.php に2ヶ所ある
// $this->_sanitizeData(); を
$this->sanitizeData(); にすれば動きます

結果が期待通りかどうか確認お願いします
privateはずしていいのかどうか??

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 06:57 PM JST
投稿者: daioh_

Quote by: terayama

undefined method Story::Story() ですので・・・ classes/story.class.php ありますか?

あります

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 07:58 PM JST
投稿者: daioh_

タイトルが文字化けしますが本文は投稿できてます

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 08:05 PM JST
投稿者: daioh_

タイトル 半角英数字は文字化けせず

画像も添付ファイルで反映されました


書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 08:53 PM JST
投稿者: terayama

化けるメールサブジェクトのソースはどんなでしょうか

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 09:14 PM JST
投稿者: daioh_

テスト が
=E3=83=86=E3=82=B9=E3=83=88?=

だい が
=E3=81=A0=E3=81=84?=

あいうえお が
=E3=81=82=E3=81=84=E3=81=86=E3=81=88=E3=81=8A?=


書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 09:30 PM JST
投稿者: daioh_

= がなけりゃ UTF-8の16進数版?かな

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 09:36 PM JST
投稿者: terayama

Quoted Printableみたいだけど・・・
送信に使っているメーラー?は何ですか

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 09:39 PM JST
投稿者: daioh_

サーバー会社のWEBメールです
Roundcube Webmail


Shurikenから送ってみます

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/26/19 10:09 PM JST
投稿者: terayama

Subject: =?UTF-8?Q? みたいな部分はあります?

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/27/19 08:51 AM JST
投稿者: daioh_

Subject: =?UTF-8?Q? みたいな部分はあります?


WEBメール(Roundcube Webmail)で送ると 追加されるようです
設定探してみましたがありませんでした

Shurikenから送ってみたら文字化けもせず正常でした

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/27/19 10:34 AM JST
投稿者: daioh_

携帯端末のメールアドレスをyahooメールにして
WEBメール(Yahooメール)で送ると
文字化けもせず正常でした

これで行こうかな?

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/27/19 12:46 PM JST
投稿者: terayama

ぼちぼちエラー潰していきますか
Geeklog2.2はdengenさん頼りになりそうですね

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/27/19 08:53 PM JST
投稿者: daioh_

WEBメール(Roundcube Webmail)で送ると 追加されるようです
設定探してみましたがありませんでした


こんな記述見つけました
Roundcube webmail
・WebはUTF-8の文字エンコーディングなのは何ら問題ありませんが、送信するメールのメッセージもUTF-8に固定
・ヘッダーは一般的な日本語のISO-2022-JPでなくUTF-8で、Qエンコーディング
・メールのボディもISO-2022-JPではなくUTF-8で、quoted-printableでエンコード
・ISO-2022-JPの文字エンコーディングのメールは一応は正常に受信できますが、
 いわゆる機種依存文字等が含まれているとUTF-8への変換に失敗して正しく表示できません。
 これはボディだけでなく、ヘッダーでも起きます。


これじゃ Roundcube Webmail では解決できなさそう

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/28/19 11:00 AM JST
投稿者: terayama

Subject: =?UTF-8?Q?
が記述されていれば utf-8 の Qエンコード になるはずなんですけどねー
QdmailReceiver 調べてみるかな

書込: Geeklog 2.13 moblog プラグイン 

投稿日: 03/30/19 02:10 PM JST
投稿者: terayama

Geeklog2.2JP IVYWE版にmoblog入れてみました

StoryをArticleに変更(lib-story.phpがlib-article.phpになってるので)
(&$array) を (array &$array)
コンストラクターをちゃんと __construct()
private を public に(2つしました 他に方法を考えるほうがよさそうですが)
$this->_sanitizeData(); を $this->sanitizeData();
COM_createHTMLDocumentに変更する(第一引数を変数にする)

で動いてるようです

Geeklog Japan - 掲示板
https://www.geeklog.jp/forum/viewtopic.php?showtopic=19451