- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
var sEmailRecipient = string.Empty;
string m_sPhysicalPath = "";
if (SaveType == "both" || SaveType == "email")
{
List<User> recipients = null;
if (RecipentSelectMode == "auto")
{
if (!string.IsNullOrEmpty(AutoRecipient))
recipients = Notification.ConvertToUsers(AutoRecipient, MethodologyId, CurrentObjectId, CurrentUserId, CurrentEntityName);
}
if(RecipentSelectMode == "manual"){
if (Recipient != null)
sEmailRecipient = EvaluateExpression(CurrentUserId, MethodologyId, MainEntityName, MainObjectId, Recipient);
}
m_sPhysicalPath = Document.AbsoluteApplicationPath + "/" + p_sReportPath.Substring(p_sReportPath.LastIndexOf("storage"));
if (RecipentSelectMode == "auto")
{
foreach (User user in recipients)
{
if (Regex.IsMatch(user.Email, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", RegexOptions.None))
{
SendReportByEmail(m_sPhysicalPath, user);
}
}
}
if (RecipentSelectMode == "manual")
{
if (Regex.IsMatch(Recipient, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", RegexOptions.None))
{
SendReportByEmail(m_sPhysicalPath, new User { Email = sEmailRecipient });
}
else
{
return CreateResult(GetClientData(), "Email message sending failed - incorrect email address - " + Recipient, (int)ReportRenderingFailType.Success);
}
}
}
if (SaveType == "email")
{
FileInfo file = new FileInfo(m_sPhysicalPath);
if (file.Exists)
file.Delete();
}
wvxvw 27.01.2011 23:20 # −1
abatishchev 28.01.2011 11:15 # 0
wvxvw 28.01.2011 13:44 # 0
abatishchev 28.01.2011 15:08 # 0
это один из примеров того, почему потребности софта с каждым годом растут: програмистам лень думать, мол планка памяти стоит на дешевле чем час работы хорошего программиста
abatishchev 28.01.2011 15:09 # −2
wvxvw 28.01.2011 15:43 # +4
Вы RFC откройте да прочитайте - выражение по ссылке проверяет что-то только отдаленно похожее на e-mail.
Lure Of Chaos 28.01.2011 15:45 # 0
Анонимус 28.01.2011 15:01 # +1
gegMOPO4 28.01.2011 18:10 # 0
Анонимус 28.01.2011 18:14 # +1
есть один способ проверить почту:
послать письмо и попросить кликнуть на линк
absolut 28.01.2011 18:45 # +1
Анонимус 28.01.2011 18:47 # +1
списка всех существующих емейлов к сожалению не сущестует
koodeer 28.01.2011 23:33 # 0
на какую спецслужбу работаете?..
bugmenot 29.01.2011 10:30 # 0
ЦКЗ?
gegMOPO4 30.01.2011 12:50 # +1
Но перед отправкой стоит провести и более лёгкую проверку. Что вы и продемонстрировали выше.
abatishchev 28.01.2011 11:15 # −1
Lure Of Chaos 28.01.2011 12:11 # 0
absolut 28.01.2011 12:39 # +3
Lure Of Chaos 28.01.2011 12:45 # 0
absolut 28.01.2011 13:09 # +3
Lure Of Chaos 28.01.2011 13:11 # +2
koodeer 28.01.2011 14:04 # +2
PetrLyapin 28.01.2011 14:13 # −3
Анонимус 28.01.2011 15:03 # +2
Lure Of Chaos 28.01.2011 15:23 # 0
bugmenot 28.01.2011 15:03 # +6
absolut 28.01.2011 15:53 # 0
bugmenot 28.01.2011 16:09 # 0
meh. это же почти проприетарное похапе!
absolut 28.01.2011 17:58 # 0
Анонимус 28.01.2011 18:00 # −1
и причем тут асп? на нем уже никто не пишет почти (к счастю)
если речь об асп.нет -- то да
на нем сайты лучше, конечно если они хотябы на mvc.net
absolut 28.01.2011 18:50 # 0
ASP (пусть будет .Net) - серверное, Flash - клиентское. Или вы о чем-то другом ?
Анонимус 28.01.2011 18:53 # +1
мне жаль, что самыми популярными языками стали самые плохие
писать на джаваскрипте так больно, что гугл даже придумал гвт, что бы нормально писать клиентский код.
а в мире пхп до сих пор борюца с скл инъекциями, не понимают смысла ооп, и вообще находятся на уровне домашних программистов каменного века.
мир не идеален.
wvxvw 28.01.2011 16:01 # 0
ЗЫ. Обидно, что акцент сместился с того, ради чего этот код сюда запостили на банальные вещи.
bugmenot 28.01.2011 16:12 # 0
детектед
absolut 28.01.2011 18:00 # 0
Анонимус 28.01.2011 18:04 # +4
abatishchev 28.01.2011 14:40 # 0
но речь то идет о C# и крайне выборочном использовании
за использование МногоРазныхСтилей-в-1-классе - голову пробивать надо точно
Lure Of Chaos 28.01.2011 15:24 # +1
> за использование МногоРазныхСтилей-в-1-классе - голову пробивать надо точно
7ion 28.01.2011 14:30 # 0
abatishchev 28.01.2011 14:39 # −2
Lure Of Chaos 28.01.2011 15:25 # 0
abatishchev 28.01.2011 15:27 # −2
для языков которые не различают регистр (int x (поле) и int X (свойство))
поэтому ввели m_x
не?
Lure Of Chaos 28.01.2011 15:36 # 0
для языков, где были структуры, но не было классов, что бы помечать "область видимости" - что можно трогать извне, а за что отрывать руки.
для языков, где локальные переменные в методах прятали поля (x=0; - переменная или поле?)
Анонимус 28.01.2011 18:15 # +1
static же