void CSpiderAddPageDlg::BuildOutFolder() { CHAR szFile [10000]; *szFile = 0; fsURL url; if (m_bOutFolderChanged) return; if (IR_SUCCESS != url.Crack (m_strUrl)) return; if (*url.GetHostName () == 0) return; if (IsDlgButtonChecked (IDC_KEEP) == BST_CHECKED) { SetDlgItemText (IDC_OUTFOLDER, m_strBaseFolder); return; } fsFileNameFromUrlPath (url.GetPath (), url.GetInternetScheme () == INTERNET_SCHEME_FTP, TRUE, szFile, sizeof (szFile)); CString str = m_strBaseFolder; str += url.GetHostName (); str += '\\'; SetDlgItemText (IDC_OUTFOLDER, str); }
BOOL fsIECatchMgr::OnBeforeNavigate(LPCSTR pszUrl, BOOL bCheckALT) { try { CHAR szFile [MY_MAX_PATH] = ""; LPCSTR pszExt; fsURL url; if (bCheckALT) { if ( (GetKeyState (VK_MENU) & 0x8000) == FALSE && m_bALTShouldPressed) return TRUE; } if (url.Crack (pszUrl) != IR_SUCCESS) return TRUE; fsFileNameFromUrlPath (url.GetPath (), url.GetInternetScheme () == INTERNET_SCHEME_FTP, TRUE, szFile, sizeof (szFile)); if (*szFile == 0) return TRUE; pszExt = strrchr (szFile, '.'); if (pszExt) pszExt++; else return TRUE; BOOL bExtPresent = IsExtInExtsStr (m_strSkipExts, pszExt); if (bExtPresent) return TRUE; return UINT_MAX == _pwndDownloads->CreateDownload (pszUrl, TRUE); } catch (const std::exception& ex) { ASSERT (FALSE); vmsLogger::WriteLog("fsIECatchMgr::OnBeforeNavigate " + tstring(ex.what())); return TRUE; } catch (...) { ASSERT (FALSE); vmsLogger::WriteLog("fsIECatchMgr::OnBeforeNavigate unknown exception"); return TRUE; } }
fsInternetResult fsMirrorURLsMgr::OnSearchScriptResultsReceived() { fsHTMLParser parser; parser.SetKillDupes (TRUE); parser.ParseHTML (LPSTR (m_dldr.Get_FileBuffer ())); m_vMirrorURLs.clear (); for (int i = 0; i < parser.GetUrlCount () && m_bAbort == FALSE; i++) { fsURL url; LPCSTR pszUrl = parser.GetUrl (i); if (IR_SUCCESS != url.Crack (pszUrl)) continue; if (fsIsServersEqual (url.GetHostName (), m_strBaseServer, TRUE) || fsIsServersEqual (m_strBaseServer, url.GetHostName (), TRUE) ) continue; char szFileName [10000]; fsFileNameFromUrlPath (url.GetPath (), url.GetInternetScheme () == INTERNET_SCHEME_FTP, TRUE, szFileName, sizeof (szFileName)); if (stricmp (szFileName, m_strFile) == 0) { if (IsMirrorURLGood (pszUrl) == FALSE) continue; m_vMirrorURLs.add (pszUrl); } } m_dldr.Free_FileBuffer (); if (m_bAbort) return IR_S_FALSE; Event (MUME_DONE); return IR_SUCCESS; }
BOOL CWGUrlReceiver::is_ExtToSkip() { USES_CONVERSION; fsURL url; if (url.Crack (W2T (m_dlInfo.bstrUrl)) != IR_SUCCESS) return TRUE; TCHAR szFile [MY_MAX_PATH]; fsFileNameFromUrlPath (url.GetPath (), url.GetInternetScheme () == INTERNET_SCHEME_FTP, TRUE, szFile, sizeof (szFile)); if (*szFile == 0) return FALSE; LPCTSTR pszExt = _tcsrchr (szFile, _T('.')); if (pszExt == NULL) return FALSE; return IsExtInExtsStr (_App.Monitor_SkipExts (), ++pszExt); }
BOOL is_ExtToSkip (LPCSTR pszURL, BOOL bUseSkipExtsList) { fsURL url; if (url.Crack (pszURL) != IR_SUCCESS) return bUseSkipExtsList == FALSE; char szFile [10000]; fsFileNameFromUrlPath (url.GetPath (), url.GetInternetScheme () == INTERNET_SCHEME_FTP, TRUE, szFile, sizeof (szFile)); if (*szFile == 0) return bUseSkipExtsList == FALSE; LPCSTR pszExt = strrchr (szFile, '.'); if (pszExt++ == NULL) return bUseSkipExtsList == FALSE; if (bUseSkipExtsList == FALSE && IsExtInExtsStr (Monitor_OnlyExts (), pszExt) == FALSE) return TRUE; return IsExtInExtsStr (Monitor_SkipExts (), pszExt); }
void CCreateBatchDownload::UrlChanged() { CHAR szFile [10000]; *szFile = 0; fsURL url; m_bBLParametersChanged = true; if (IR_SUCCESS != url.Crack (m_strUrl)) return; if (m_bGroupChanged == FALSE) { fsFileNameFromUrlPath (url.GetPath (), url.GetInternetScheme () == INTERNET_SCHEME_FTP, TRUE, szFile, sizeof (szFile)); int len = strlen (szFile); vmsDownloadsGroupSmartPtr grp; if (len) { int i; for (i = len-1; i > 0; i--) if (szFile [i] == '.') break; if (i && i < len-1) { i++; CHAR szExt [1000]; strcpy (szExt, szFile + i); grp = _DldsGrps.FindGroupByExt (szExt); } } if (grp == NULL) grp = _DldsGrps.FindGroup (GRP_OTHER_ID); if (grp != NULL) { if (m_wndGroups.SelectGroup (grp)) OnChangeGroups(); } m_bGroupChanged = FALSE; } CString strNewUser, strNewPassword; strNewUser = url.GetUserName (); strNewPassword = url.GetPassword (); fsSiteInfo *site = _SitesMgr.FindSite (url.GetHostName (), fsNPToSiteValidFor (fsSchemeToNP (url.GetInternetScheme ()))); if (site) { if (!m_bAuthChanged && strNewUser.IsEmpty ()) { if (!site->strUser.IsEmpty ()) { strNewUser = site->strUser; if (!site->strPassword.IsEmpty ()) strNewPassword = site->strPassword; } } if (site->pGroup && m_bGroupChanged == FALSE) { m_wndGroups.SelectGroup (site->pGroup); OnChangeGroups(); m_bGroupChanged = FALSE; } } if (!m_bAuthChanged) { m_bAuthorization = !strNewUser.IsEmpty (); CheckDlgButton (IDC_USELOGIN, m_bAuthorization ? BST_CHECKED : BST_UNCHECKED); SetDlgItemText (IDC_USER, strNewUser); SetDlgItemText (IDC_PASSWORD, strNewPassword); m_bAuthChanged = FALSE; UpdateEnabled (); } }
BOOL CCreateTPDownloadDlg::OnInitDialog() { CDialog::OnInitDialog(); SetDlgItemText (IDC_URL, m_strUrl); CHAR szFile [10000]; *szFile = 0; fsFileNameFromUrlPath (m_strUrl, FALSE, TRUE, szFile, sizeof (szFile)); m_schScheduleParam.schTask.hts.enType = HTS_ONCE; m_schScheduleParam.schTask.hts.last.dwHighDateTime = m_schScheduleParam.schTask.hts.last.dwLowDateTime = UINT_MAX; m_schScheduleParam.schTask.dwFlags = SCHEDULE_ENABLED; SYSTEMTIME time; GetLocalTime (&time); if (++time.wHour > 23) time.wHour = 0; time.wMinute = 0; SystemTimeToFileTime (&time, &m_schScheduleParam.schTask.hts.next); m_schScheduleParam.schTask.uWaitForConfirmation = 0; m_btnChooseFolder.SetIcon (SICO (IDI_CHOOSEFOLDER)); m_btnCreateGroup.SetIcon (SICO (IDI_CREATEGROUP)); m_btnOutFolderSetDefault.SetIcon (SICO (IDI_SETFOLDERDEFAULT)); m_wndGroups.Fill (); CComboBox *pUrls = (CComboBox*) GetDlgItem (IDC_URL); int i = 0; for (i = 0; i < _LastUrlFiles.GetRecordCount (); i++) pUrls->AddString (_LastUrlFiles.GetRecord (i)); CComboBox *pDirs = (CComboBox*) GetDlgItem (IDC_OUTFOLDER); for (i = 0; i < _LastFolders.GetRecordCount (); i++) pDirs->AddString (_LastFolders.GetRecord (i)); m_bGroupChanged = m_bAuthChanged = FALSE; SetDlgItemInt (IDC_STRSPEED, 1); m_wndSpin.SetRange (1, 10); GetDlgItem (IDC_URL)->SetFocus (); UrlChanged (); if (strlen(szFile) == 0) { CString strDateTime; SYSTEMTIME systime; GetLocalTime (&systime); char szDate [100], szTime [100]; GetDateFormat (LOCALE_USER_DEFAULT, 0, &systime, "yyyy-MM-dd", szDate, 100); GetTimeFormat (LOCALE_USER_DEFAULT, 0, &systime, "HHmmss", szTime, 100); strDateTime = szDate; strDateTime += " "; strDateTime += szTime; strDateTime += ".asf"; SetDlgItemText (IDC_SAVEAS, strDateTime); } else { if (strchr(szFile, '.') == 0) strcat(szFile, ".asf"); SetDlgItemText (IDC_SAVEAS, szFile); } ApplyLanguage (); m_bGroupChanged = FALSE; if (m_pGroup == NULL) m_pGroup = _DldsGrps.FindGroup (_App.NewDL_GroupId ()); if (m_pGroup != NULL && m_wndGroups.SelectGroup (m_pGroup)) { m_bGroupChanged = TRUE; OnChangeGroups (); } m_wndDldType.AddString (LS (L_SAVEFILE)); m_wndDldType.AddString (LS (L_OPENFILE)); m_wndDldType.AddString (LS (L_SAVEFILEANDOPENIT)); m_wndDldType.SetCurSel (0); CheckDlgButton (IDC_FILEAUTO, _App.NewDL_GenerateNameAutomatically () ? BST_CHECKED : BST_UNCHECKED); OnFileauto (); UpdateEnabled (); return TRUE; }
void CCreateTPDownloadDlg::UrlChanged() { SetDlgItemText (IDC_QSIZE, LS (L_QUERYSIZE)); if (m_bThread) m_bNeedExit = TRUE; if (IR_SUCCESS != Crack(m_strUrl)) { GetDlgItem (IDC_QSIZE)->EnableWindow (FALSE); return; } CHAR szFile [10000]; *szFile = 0; m_bUrlChanged = TRUE; if (m_dld->dwFlags & (DLD_MALICIOUS_NO | DLD_MALICIOUS_YES)) { GetDlgItem (IDC_MALICIOUS)->EnableWindow (TRUE); m_dld->dwFlags &= ~ (DLD_MALICIOUS_NO | DLD_MALICIOUS_YES); } if (m_bGroupChanged == FALSE) { fsFileNameFromUrlPath (m_strUrl, FALSE, TRUE, szFile, sizeof (szFile)); int len = strlen (szFile); vmsDownloadsGroupSmartPtr grp; if (len) { if (strchr(szFile, '.') == 0) strcat(szFile, ".asf"); SetDlgItemText (IDC_SAVEAS, szFile); int i; for (i = len-1; i > 0; i--) if (szFile [i] == '.') break; if (i && i < len-1) { i++; CHAR szExt [1000]; strcpy (szExt, szFile + i); grp = _DldsGrps.FindGroupByExt (szExt); } } if (grp == NULL) grp = _DldsGrps.FindGroup (GRP_OTHER_ID); if (grp != NULL) { if (m_wndGroups.SelectGroup (grp)) OnChangeGroups(); } } bool bRtsp = (m_strUrl.Find("rtsp://") != -1); GetDlgItem (IDC_STRSPEED)->EnableWindow(bRtsp); GetDlgItem (IDC_STRSPEED_SPIN)->EnableWindow(bRtsp); GetDlgItem (IDC_QSIZE)->EnableWindow (); }