2023年02月

2023年02月28日

OpenPNE3 メールアドレスで検索

 OpenPNE2系では管理画面でメンバーをメールアドレスで検索できていました。
 この機能が3系になって無くなってしまったので、カスタマイズしました。
 たぶん、同様の要望を持っている方もおられると思うので、どこに何を追記したかを書いておきます。

カスタマイズするのはopMemberProfileSearchForm.class.phpのみです。
opMemberProfileSearchForm$widgets に
'PC_Address'の入力項目を追加します。


そして、getQuery()にテーブル「member_config」から、入力されたPC_Addressを検索するコードを追加するのみです。
opMemberProfileSearchForm2







これだけで下図のようにカスタマイズできます。
findMailAddress






他にも招待メールの送信履歴をカスタマイズしましたが、こちらはあまり用事が無いと思うので割愛します。
送信履歴




 たったこれだけですが、アライアンスの管理には必須の機能なのです。


ho_cad at 03:18|PermalinkComments(0)

2023年02月24日

アライアンスsnsのリニューアル後1日目に機能不足を発見

 一応リニューアルが完了してSNSも無事開けているので安心していましたが、
新規登録された会員について、登録された旨のメールが来ない! ことに気付きPHPを更にカスタマイズしました。
 今までは、「○○さんが登録されました」の会員登録完了メールが自動で来て、新規会員は自動的にsns管理者(岡崎)とフレンドになっていたのですが、OpenPNE3系ではその機能が無くなったようで、ソースコードを確認しても、確かにそんな機能は有りません。
 登録完了メールは重要で、招待メール送信後にいくら待っても会員登録されない方は「何かトラブってるなー」と推測されて、それなりの対応メールとか送っているのです。

 でPHPに処理を追記しました。
登録完了メールの送信まあ、雑なコードで、文字列リソースとか無視して直接日本語でメールのタイトルとか記述しています。

 メール送信もいきなりmb_send_mailを使ってます。 まあ結果オーライです。
 だいぶPHPとSymfonyの構造に慣れたので意外とすんなり改良出来ました。

 後はブラウザキャッシュの問題が残りますが、しばらく様子を見ることにします。





ho_cad at 18:04|PermalinkComments(0)

2023年02月23日

HOCアライアンスのSNSサイトをリニューアルしました

 新サイトではダウンロートはマイホームに来ました。

 もしも「リニューアル作業中です」が表示されたら、ウェブブラウザで[ctrl+F5]を押してキャッシュを無効にして新サイトを表示してください。

 VBPとアップロードのコミュニティにいろいろアップしていただいているファイルは、一括してコミニュティ内での共有フォルダーに引き継いでいます。
uploadfile







 ファイル名は元のままで、説明に元々アップしてもらったトピックタイトルとその作成日付を入れています。

 慣れれば一覧できるので、これはこれで使いやすいのではないかと思います。

 フォルダーの作成とファイルのアップロードは自由にできますので、どこにアップしたかをトピックコメントに書いてもらうと良いと思います。

 これでhocアライアンスはレンタルサーバーでPHP7がサポートされる限り安泰です。

ho_cad at 00:09|PermalinkComments(0)

2023年02月21日

web系アプリ開発でのキャッシュの落とし穴

 インターネットのサイトはとにかくキャッシュしまくります。
 Symfonyで構築したサイトは、まずSymfony自体がキャッシュし、その上にChromeのようなウェブブラウザもキャッシュします。
 なので、手元でソースコードを書き換えてウェブブラウザで実行しても、書き換えた内容が反映されず「えー 何で?」に陥ります。

 とりあえずウェブブラウザで[ctrl+F5]キーでキャッシュを無視して最新状態で表示できますが、symfonyの場合、更に内部でキャッシュしているので「書き換えた内容が反映されない」という現象が起きます。

 更に、今回分かったのですがphpのファイル名の命名規則で、元が「○○.class.php」というファイルを書き換えてテストしようとして、そのコピーを「○○.class元の状態.php」で残したうえで、「○○.class.php」を書き換えても、実行時には「○○.class元の状態.php」の方を読み込みに行く という事を発見しました。

 これは、PHPのAutoLoad内でのファイル名の取得規則による現象だと思われ、「元の状態○○.class.php」にして、symfony ccでキャッシュのクリアを掛けたら、実際に読み込んでほしい「○○.class.php」の方を読み込んでくれるようになりました。

 このことが分かるのに半日費やしました・・・

多分ちゃんとした開発環境があれば、ここらへんのことは自動で処理してくれるのでしょうね・・・

 自分への備忘録! web系アプリではキャッシュに気を付けよ!

 

ho_cad at 16:56|PermalinkComments(0)

2023年02月19日

予告! 2月23日~25日の間でアライアンスを全面リニューアルします

 アライアンスのSNS関係のPHP7対応の移行作業の手順が完成しました。
 自分は普段Web系のプログラマーではないので、間を空けると絶対に忘れるので、諸々覚えているうちにリニューアルしてしまいます。

 ①2月22日の夜からアライアンスへの入会申し込みとアライアンスのサイトを一時的に閉鎖します。
 ②その日のうちに現行のデータベースをPHP7対応にアップグレード。
 ③23日のうちに新サイトを再構築し、全て再開。

一応この予定でやります。
 万一移行本番でつまづいても25日までにはリニューアル作業を完了してアライアンスを再開できると思います。
 ご迷惑をお掛けするかもしれませんが、今後もHOCアライアンスを存続させるためなので、ご理解お願いします。

 今回の作業でweb系プログラミングの煩雑さを痛感したので、諸々引退したら、自宅で「何でもプログラミング教室」でもやろうかと思う今日この頃・・・

ho_cad at 16:14|PermalinkComments(2)