generalizing call back url

This commit is contained in:
Hamid Reza Mohammadi 2020-11-30 11:38:03 +03:30
parent 95b1dedadc
commit c3ae0bd6c8
6 changed files with 40 additions and 66 deletions

View File

@ -45,15 +45,16 @@ namespace RMuseum.Controllers
/// <param name="secretCode"></param>
protected override string GetSignUpEmailSubject(string secretCode)
{
return $"{secretCode} کد ثبت نام شما در گنجینهٔ گنجور";
return $"{secretCode} کد ثبت نام شما در گنجور";
}
/// <summary>
/// Sign Up Email Html Content
/// </summary>
/// <param name="secretCode"></param>
/// <param name="signupCallbackUrl"></param>
/// <returns>html content</returns>
protected override string GetSignUpEmailHtmlContent(string secretCode)
protected override string GetSignUpEmailHtmlContent(string secretCode, string signupCallbackUrl)
{
string content =
"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">"
@ -64,7 +65,7 @@ namespace RMuseum.Controllers
+
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />"
+
$"<title>کد ثبت نام شما در گنجینهٔ گنجور: {secretCode}</title>"
$"<title>کد ثبت نام شما در گنجور: {secretCode}</title>"
+
"<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"/>"
+
@ -78,7 +79,7 @@ namespace RMuseum.Controllers
+
"<td align=\"center\" style=\"padding: 40px 0 30px 0;\">"
+
"<img src=\"https://i.ganjoor.net/gm.gif\" alt=\"گنجینهٔ گنجور\" width=\"150\" height=\"150\" style=\"display: block;\" />"
"<img src=\"https://i.ganjoor.net/gm.gif\" alt=\"گنجور\" width=\"150\" height=\"150\" style=\"display: block;\" />"
+
"</td>"
+
@ -86,13 +87,13 @@ namespace RMuseum.Controllers
+
"<tr><td>"
+
$"<p style=\"font:normal 12px tahoma;direction:rtl\">لطفاً جهت تکمیل ثبت نام در گنجینهٔ گنجور <a href=\"{SignupCallbackUrl}?secret={secretCode}\">اینجا</a> کلیک کنید یا اگر صفحهٔ ثبت نام هنوز باز است کد <strong>{secretCode}</strong> را در آن وارد کنید.</p>"
$"<p style=\"font:normal 12px tahoma;direction:rtl\">لطفاً جهت تکمیل ثبت نام در گنجور <a href=\"{signupCallbackUrl}?secret={secretCode}\">اینجا</a> کلیک کنید یا اگر صفحهٔ ثبت نام هنوز باز است کد <strong>{secretCode}</strong> را در آن وارد کنید.</p>"
+
"</td></tr>"
+
"<tr><td>"
+
"<p style=\"font:normal 12px tahoma;direction:rtl\">اگر در گنجینهٔ گنجور ثبت نام نکرده‌اید لطفاً این نامه را نادیده بگیرید. به این نامه پاسخ ندهید، کسی پاسخگوی شما نخواهد بود.</p>"
"<p style=\"font:normal 12px tahoma;direction:rtl\">اگر در گنجور ثبت نام نکرده‌اید لطفاً این نامه را نادیده بگیرید. به این نامه پاسخ ندهید، کسی پاسخگوی شما نخواهد بود.</p>"
+
"</td></tr>"
+
@ -115,15 +116,16 @@ namespace RMuseum.Controllers
/// <param name="secretCode"></param>
protected override string GetForgotPasswordEmailSubject(string secretCode)
{
return $"{secretCode} کد بازیابی کلمهٔ عبور شما در گنجینهٔ گنجور";
return $"{secretCode} کد بازیابی کلمهٔ عبور شما در گنجور";
}
/// <summary>
/// Forgot Password Email Html Content
/// </summary>
/// <param name="secretCode"></param>
/// <param name="forgotPasswordCallbackUrl"></param>
/// <returns>html content</returns>
protected override string GetForgotPasswordEmailHtmlContent(string secretCode)
protected override string GetForgotPasswordEmailHtmlContent(string secretCode, string forgotPasswordCallbackUrl)
{
string content =
"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">"
@ -134,7 +136,7 @@ namespace RMuseum.Controllers
+
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />"
+
$"<title>کد تغییر گذرواژهٔ شما در گنجینهٔ گنجور: {secretCode}</title>"
$"<title>کد تغییر گذرواژهٔ شما در گنجور: {secretCode}</title>"
+
"<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"/>"
+
@ -148,7 +150,7 @@ namespace RMuseum.Controllers
+
"<td align=\"center\" style=\"padding: 40px 0 30px 0;\">"
+
"<img src=\"https://i.ganjoor.net/gm.gif\" alt=\"گنجینهٔ گنجور\" width=\"150\" height=\"150\" style=\"display: block;\" />"
"<img src=\"https://i.ganjoor.net/gm.gif\" alt=\"گنجور\" width=\"150\" height=\"150\" style=\"display: block;\" />"
+
"</td>"
+
@ -156,13 +158,13 @@ namespace RMuseum.Controllers
+
"<tr><td>"
+
$"<p style=\"font:normal 12px tahoma;direction:rtl\">لطفاً جهت تکمیل فرایند فراموشی گذرواژه در گنجینهٔ گنجور <a href=\"{ForgotPasswordCallbackUrl}?secret={secretCode}\">اینجا</a> کلیک کنید یا اگر صفحهٔ فراموشی گذرواژه هنوز باز است کد <strong>{secretCode}</strong> را در آن وارد کنید.</p>"
$"<p style=\"font:normal 12px tahoma;direction:rtl\">لطفاً جهت تکمیل فرایند فراموشی گذرواژه در گنجور <a href=\"{forgotPasswordCallbackUrl}?secret={secretCode}\">اینجا</a> کلیک کنید یا اگر صفحهٔ فراموشی گذرواژه هنوز باز است کد <strong>{secretCode}</strong> را در آن وارد کنید.</p>"
+
"</td></tr>"
+
"<tr><td>"
+
"<p style=\"font:normal 12px tahoma;direction:rtl\">اگر در گنجینهٔ گنجور فراموشی گذرواژه را نزده‌اید یا گذرواژه‌تان را به خاطر آوردید لطفاً این نامه را نادیده بگیرید. به این نامه پاسخ ندهید، کسی پاسخگوی شما نخواهد بود.</p>"
"<p style=\"font:normal 12px tahoma;direction:rtl\">اگر در گنجور فراموشی گذرواژه را نزده‌اید یا گذرواژه‌تان را به خاطر آوردید لطفاً این نامه را نادیده بگیرید. به این نامه پاسخ ندهید، کسی پاسخگوی شما نخواهد بود.</p>"
+
"</td></tr>"
+

View File

@ -30,11 +30,12 @@
</returns>
<param name="secretCode"></param>
</member>
<member name="M:RMuseum.Controllers.AppUserController.GetSignUpEmailHtmlContent(System.String)">
<member name="M:RMuseum.Controllers.AppUserController.GetSignUpEmailHtmlContent(System.String,System.String)">
<summary>
Sign Up Email Html Content
</summary>
<param name="secretCode"></param>
<param name="signupCallbackUrl"></param>
<returns>html content</returns>
</member>
<member name="M:RMuseum.Controllers.AppUserController.GetForgotPasswordEmailSubject(System.String)">
@ -46,11 +47,12 @@
</returns>
<param name="secretCode"></param>
</member>
<member name="M:RMuseum.Controllers.AppUserController.GetForgotPasswordEmailHtmlContent(System.String)">
<member name="M:RMuseum.Controllers.AppUserController.GetForgotPasswordEmailHtmlContent(System.String,System.String)">
<summary>
Forgot Password Email Html Content
</summary>
<param name="secretCode"></param>
<param name="forgotPasswordCallbackUrl"></param>
<returns>html content</returns>
</member>
<member name="M:RMuseum.Controllers.AppUserController.IsSignupEnabled">

View File

@ -15,12 +15,6 @@
"Default": "Warning"
}
},
"UserSignupClientCallBack": {
"Url": "https://museum.ganjoor.net/signup"
},
"ForgotPasswordClientCallBack": {
"Url": "https://museum.ganjoor.net/forgot-password"
},
"Security": {
"Secret": "k4Fy7pDsc0LgXQ8PCCfZtwmju5Ed8asc",
"DefaultTokenExpirationInSeconds": "2502000"

View File

@ -793,7 +793,7 @@ namespace RSecurityBackend.Controllers
(
signUpViewModel.Email,
GetSignUpEmailSubject(res.Result.Secret),
GetSignUpEmailHtmlContent(res.Result.Secret)
GetSignUpEmailHtmlContent(res.Result.Secret, signUpViewModel.CallbackUrl)
);
}
catch (Exception exp)
@ -820,10 +820,11 @@ namespace RSecurityBackend.Controllers
/// Sign Up Email Html Content
/// </summary>
/// <param name="secretCode"></param>
/// <param name="signupCallbackUrl"></param>
/// <returns>html content</returns>
protected virtual string GetSignUpEmailHtmlContent(string secretCode)
protected virtual string GetSignUpEmailHtmlContent(string secretCode, string signupCallbackUrl)
{
return $"{SignupCallbackUrl}?secret={secretCode}";
return $"{signupCallbackUrl}?secret={secretCode}";
}
/// <summary>
@ -909,7 +910,7 @@ namespace RSecurityBackend.Controllers
(
fpwdViewModel.Email,
GetForgotPasswordEmailSubject(res.Result.Secret),
GetForgotPasswordEmailHtmlContent(res.Result.Secret)
GetForgotPasswordEmailHtmlContent(res.Result.Secret, fpwdViewModel.CallbackUrl)
);
}
catch (Exception exp)
@ -936,10 +937,11 @@ namespace RSecurityBackend.Controllers
/// Forgot Password Email Html Content
/// </summary>
/// <param name="secretCode"></param>
/// <param name="forgotPasswordCallbackUrl"></param>
/// <returns>html content</returns>
protected virtual string GetForgotPasswordEmailHtmlContent(string secretCode)
protected virtual string GetForgotPasswordEmailHtmlContent(string secretCode, string forgotPasswordCallbackUrl)
{
return $"{ForgotPasswordCallbackUrl}?secret={secretCode}";
return $"{forgotPasswordCallbackUrl}?secret={secretCode}";
}
/// <summary>
@ -971,34 +973,6 @@ namespace RSecurityBackend.Controllers
return Ok(true);
}
/// <summary>
/// signup callback url
/// </summary>
protected string SignupCallbackUrl
{
get
{
return $"{Configuration.GetSection("UserSignupClientCallBack")["Url"]}";
}
}
/// <summary>
/// forgot password call back url
/// </summary>
protected string ForgotPasswordCallbackUrl
{
get
{
return $"{Configuration.GetSection("ForgotPasswordClientCallBack")["Url"]}";
}
}
/// <summary>
/// IAppUserService instance
/// </summary>

View File

@ -40,5 +40,10 @@ namespace RSecurityBackend.Models.Auth.ViewModels
/// Captcha Value
/// </summary>
public string CaptchaValue { get; set; }
/// <summary>
///CallbackUrl
/// </summary>
public string CallbackUrl { get; set; }
}
}

View File

@ -216,11 +216,12 @@
</returns>
<param name="secretCode"></param>
</member>
<member name="M:RSecurityBackend.Controllers.AppUserControllerBase.GetSignUpEmailHtmlContent(System.String)">
<member name="M:RSecurityBackend.Controllers.AppUserControllerBase.GetSignUpEmailHtmlContent(System.String,System.String)">
<summary>
Sign Up Email Html Content
</summary>
<param name="secretCode"></param>
<param name="signupCallbackUrl"></param>
<returns>html content</returns>
</member>
<member name="M:RSecurityBackend.Controllers.AppUserControllerBase.VerifySignUp(RSecurityBackend.Models.Auth.Db.RVerifyQueueType,System.String)">
@ -254,11 +255,12 @@
</returns>
<param name="secretCode"></param>
</member>
<member name="M:RSecurityBackend.Controllers.AppUserControllerBase.GetForgotPasswordEmailHtmlContent(System.String)">
<member name="M:RSecurityBackend.Controllers.AppUserControllerBase.GetForgotPasswordEmailHtmlContent(System.String,System.String)">
<summary>
Forgot Password Email Html Content
</summary>
<param name="secretCode"></param>
<param name="forgotPasswordCallbackUrl"></param>
<returns>html content</returns>
</member>
<member name="M:RSecurityBackend.Controllers.AppUserControllerBase.IsSignupEnabled">
@ -274,16 +276,6 @@
<param name="pwd"></param>
<returns></returns>
</member>
<member name="P:RSecurityBackend.Controllers.AppUserControllerBase.SignupCallbackUrl">
<summary>
signup callback url
</summary>
</member>
<member name="P:RSecurityBackend.Controllers.AppUserControllerBase.ForgotPasswordCallbackUrl">
<summary>
forgot password call back url
</summary>
</member>
<member name="F:RSecurityBackend.Controllers.AppUserControllerBase._appUserService">
<summary>
IAppUserService instance
@ -1342,6 +1334,11 @@
Captcha Value
</summary>
</member>
<member name="P:RSecurityBackend.Models.Auth.ViewModels.UnverifiedSignUpViewModel.CallbackUrl">
<summary>
CallbackUrl
</summary>
</member>
<member name="T:RSecurityBackend.Models.Auth.ViewModels.VerifiedSignUpViewModel">
<summary>
verified sign up view model