diff options
Diffstat (limited to 'protocols/MRA/src/MraSelectEMail.cpp')
-rw-r--r-- | protocols/MRA/src/MraSelectEMail.cpp | 152 |
1 files changed, 0 insertions, 152 deletions
diff --git a/protocols/MRA/src/MraSelectEMail.cpp b/protocols/MRA/src/MraSelectEMail.cpp deleted file mode 100644 index 19dac7a061..0000000000 --- a/protocols/MRA/src/MraSelectEMail.cpp +++ /dev/null @@ -1,152 +0,0 @@ -#include "stdafx.h"
-#include "MraSelectEMail.h"
-
-struct MraSelectEMailDlgData
-{
- CMraProto *ppro;
- MCONTACT hContact;
- DWORD dwType;
-};
-
-void AddContactEMailToListParam(MCONTACT hContact, BOOL bMRAOnly, LPSTR lpszModule, LPSTR lpszValueName, HWND hWndList)
-{
- CMStringA szEmail;
- if (DB_GetStringA(hContact, lpszModule, lpszValueName, szEmail)) {
- if (bMRAOnly == FALSE || IsEMailMR(szEmail)) {
- WCHAR wszBuff[MAX_EMAIL_LEN];
- MultiByteToWideChar(MRA_CODE_PAGE, 0, szEmail, -1, wszBuff, _countof(wszBuff));
- if (SendMessage(hWndList, LB_FINDSTRING, -1, (LPARAM)wszBuff) == LB_ERR)
- SendMessage(hWndList, LB_ADDSTRING, 0, (LPARAM)wszBuff);
- }
- }
-
- for (int i = 0; true; i++) {
- char szBuff[MAX_PATH];
- mir_snprintf(szBuff, "%s%lu", lpszValueName, i);
- if (DB_GetStringA(hContact, lpszModule, szBuff, szEmail)) {
- if (bMRAOnly == FALSE || IsEMailMR(szEmail)) {
- WCHAR wszBuff[MAX_EMAIL_LEN];
- MultiByteToWideChar(MRA_CODE_PAGE, 0, szEmail, -1, wszBuff, _countof(wszBuff));
- if (SendMessage(hWndList, LB_FINDSTRING, -1, (LPARAM)wszBuff) == LB_ERR)
- SendMessage(hWndList, LB_ADDSTRING, 0, (LPARAM)wszBuff);
- }
- }
- else if (i > EMAILS_MIN_COUNT)
- break;
- }
-}
-
-INT_PTR CALLBACK MraSelectEMailDlgProc(HWND hWndDlg, UINT message, WPARAM wParam, LPARAM lParam)
-{
- MraSelectEMailDlgData *dat = (MraSelectEMailDlgData*)GetWindowLongPtr(hWndDlg, GWLP_USERDATA);
-
- switch (message) {
- case WM_INITDIALOG:
- TranslateDialogDefault(hWndDlg);
- dat = (MraSelectEMailDlgData*)lParam;
- {
- BOOL bMRAOnly;
-
- SetWindowLongPtr(hWndDlg, GWLP_USERDATA, (LONG_PTR)lParam);
- HWND hWndList = GetDlgItem(hWndDlg, IDC_LIST_EMAILS);
-
- switch (dat->dwType) {
- case MRA_SELECT_EMAIL_TYPE_SEND_POSTCARD:
- bMRAOnly = FALSE;
- break;
- case MRA_SELECT_EMAIL_TYPE_VIEW_ALBUM:
- case MRA_SELECT_EMAIL_TYPE_READ_BLOG:
- bMRAOnly = TRUE;
- break;
- default:
- bMRAOnly = FALSE;
- break;
- }
-
- LPSTR lpszProto = dat->hContact ? GetContactProto(dat->hContact) : dat->ppro->m_szModuleName;
-
- AddContactEMailToListParam(dat->hContact, bMRAOnly, lpszProto, "e-mail", hWndList);
- AddContactEMailToListParam(dat->hContact, bMRAOnly, "UserInfo", "e-mail", hWndList);
- AddContactEMailToListParam(dat->hContact, bMRAOnly, "UserInfo", "Mye-mail", hWndList);
- AddContactEMailToListParam(dat->hContact, bMRAOnly, "UserInfo", "Companye-mail", hWndList);
- AddContactEMailToListParam(dat->hContact, bMRAOnly, "UserInfo", "MyCompanye-mail", hWndList);
- }
- return TRUE;
-
- case WM_CLOSE:
- DestroyWindow(hWndDlg);
- break;
-
- case WM_DESTROY:
- SetWindowLongPtr(hWndDlg, GWLP_USERDATA, 0);
- mir_free(dat);
- EndDialog(hWndDlg, NO_ERROR);
- break;
-
- case WM_COMMAND:
- switch (LOWORD(wParam)) {
- case IDC_LIST_EMAILS:
- if (HIWORD(wParam) == LBN_DBLCLK)
- SendMessage(hWndDlg, WM_COMMAND, MAKEWPARAM(IDOK, BN_CLICKED), (LPARAM)GetDlgItem(hWndDlg, IDOK));
- break;
-
- case IDOK:
- {
- CMStringA szEmail;
- WCHAR wszBuff[MAX_PATH];
-
- SendDlgItemMessage(hWndDlg, IDC_LIST_EMAILS, LB_GETTEXT, SendDlgItemMessage(hWndDlg, IDC_LIST_EMAILS, LB_GETCURSEL, 0, 0), (LPARAM)wszBuff);
- szEmail = wszBuff;
- szEmail.MakeLower();
-
- switch (dat->dwType) {
- case MRA_SELECT_EMAIL_TYPE_SEND_POSTCARD:
- {
- CMStringA szUrl;
- szUrl.Format("http://cards.mail.ru/event.html?rcptname=%s&rcptemail=%s", _T2A(Clist_GetContactDisplayName(dat->hContact)), szEmail.c_str());
- dat->ppro->MraMPopSessionQueueAddUrl(dat->ppro->hMPopSessionQueue, szUrl);
- }
- break;
- case MRA_SELECT_EMAIL_TYPE_VIEW_ALBUM:
- dat->ppro->MraMPopSessionQueueAddUrlAndEMail(dat->ppro->hMPopSessionQueue, MRA_FOTO_URL, szEmail);
- break;
- case MRA_SELECT_EMAIL_TYPE_READ_BLOG:
- dat->ppro->MraMPopSessionQueueAddUrlAndEMail(dat->ppro->hMPopSessionQueue, MRA_BLOGS_URL, szEmail);
- break;
- case MRA_SELECT_EMAIL_TYPE_VIEW_VIDEO:
- dat->ppro->MraMPopSessionQueueAddUrlAndEMail(dat->ppro->hMPopSessionQueue, MRA_VIDEO_URL, szEmail);
- break;
- case MRA_SELECT_EMAIL_TYPE_ANSWERS:
- dat->ppro->MraMPopSessionQueueAddUrlAndEMail(dat->ppro->hMPopSessionQueue, MRA_ANSWERS_URL, szEmail);
- break;
- case MRA_SELECT_EMAIL_TYPE_WORLD:
- dat->ppro->MraMPopSessionQueueAddUrlAndEMail(dat->ppro->hMPopSessionQueue, MRA_WORLD_URL, szEmail);
- break;
- }
- }
- //break;
- case IDCANCEL:
- DestroyWindow(hWndDlg);
- break;
- default:
- break;
- }
- break;
- default:
- break;
- }
-
- return FALSE;
-}
-
-DWORD CMraProto::MraSelectEMailDlgShow(MCONTACT hContact, DWORD dwType)
-{
- MraSelectEMailDlgData *dat = (MraSelectEMailDlgData*)mir_calloc(sizeof(MraSelectEMailDlgData));
- if (dat) {
- dat->ppro = this;
- dat->hContact = hContact;
- dat->dwType = dwType;
- DialogBoxParam(g_plugin.getInst(), MAKEINTRESOURCE(IDD_DIALOG_SELECT_EMAIL), nullptr, MraSelectEMailDlgProc, (LPARAM)dat);
- }
- return 0;
-}
|