Commit 1d9b6982ef4e4d830aed3465a45dbf793675524f
1 parent
8566ff1d
Commit for Forgot UserID, Password, Reset password
Showing
19 changed files
with
1720 additions
and
566 deletions
400-SOURCECODE/AIAHTML5.API/AIAHTML5.API.csproj
... | ... | @@ -96,6 +96,8 @@ |
96 | 96 | <ItemGroup> |
97 | 97 | <Content Include="Global.asax" /> |
98 | 98 | <Content Include="index.html" /> |
99 | + <Content Include="Templates\forgot-Password.html" /> | |
100 | + <Content Include="Templates\forgot-UserId.html" /> | |
99 | 101 | <Content Include="Web.config"> |
100 | 102 | <SubType>Designer</SubType> |
101 | 103 | </Content> |
... | ... | @@ -104,9 +106,12 @@ |
104 | 106 | <Compile Include="App_Start\WebApiConfig.cs" /> |
105 | 107 | <Compile Include="Constants\AIAConstants.cs" /> |
106 | 108 | <Compile Include="Controllers\AuthenticateController.cs" /> |
109 | + <Compile Include="Controllers\ForgotUserController.cs" /> | |
110 | + <Compile Include="Controllers\ResetPasswordController.cs" /> | |
107 | 111 | <Compile Include="Global.asax.cs"> |
108 | 112 | <DependentUpon>Global.asax</DependentUpon> |
109 | 113 | </Compile> |
114 | + <Compile Include="Models\ResetUser.cs" /> | |
110 | 115 | <Compile Include="Models\Users.cs" /> |
111 | 116 | <Compile Include="Properties\AssemblyInfo.cs" /> |
112 | 117 | <Compile Include="Properties\Settings.Designer.cs"> |
... | ... | @@ -114,6 +119,7 @@ |
114 | 119 | <DesignTimeSharedInput>True</DesignTimeSharedInput> |
115 | 120 | <DependentUpon>Settings.settings</DependentUpon> |
116 | 121 | </Compile> |
122 | + <Compile Include="Utility\EmailUtility.cs" /> | |
117 | 123 | </ItemGroup> |
118 | 124 | <ItemGroup> |
119 | 125 | <Content Include="Logs\AIALogs.log" /> | ... | ... |
400-SOURCECODE/AIAHTML5.API/AIAHTML5.API.csproj.user
... | ... | @@ -6,6 +6,7 @@ |
6 | 6 | <WebStackScaffolding_IsReferencingScriptLibrariesSelected>True</WebStackScaffolding_IsReferencingScriptLibrariesSelected> |
7 | 7 | <WebStackScaffolding_LayoutPageFile /> |
8 | 8 | <WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected> |
9 | + <ProjectView>ShowAllFiles</ProjectView> | |
9 | 10 | </PropertyGroup> |
10 | 11 | <ProjectExtensions> |
11 | 12 | <VisualStudio> | ... | ... |
400-SOURCECODE/AIAHTML5.API/Controllers/ForgotUserController.cs
0 → 100644
1 | +using System; | |
2 | +using System.Collections.Generic; | |
3 | +using System.Linq; | |
4 | +using System.Net; | |
5 | +using System.Net.Http; | |
6 | +using System.Web.Http; | |
7 | +using AIAHTML5.API.Constants; | |
8 | +using log4net; | |
9 | +using Newtonsoft.Json; | |
10 | +using Newtonsoft.Json.Linq; | |
11 | +using AIAHTML5.API.Models; | |
12 | +using AIAHTML5.API.Utility; | |
13 | + | |
14 | +namespace AIAHTML5.API.Controllers | |
15 | +{ | |
16 | + public class ForgotUserController : ApiController | |
17 | + { | |
18 | + // GET api/<controller> | |
19 | + public IEnumerable<string> Get() | |
20 | + { | |
21 | + return new string[] { "value1", "value2" }; | |
22 | + } | |
23 | + | |
24 | + // GET api/<controller>/5 | |
25 | + public string Get(int id) | |
26 | + { | |
27 | + return "value"; | |
28 | + } | |
29 | + | |
30 | + // POST api/<controller> | |
31 | + //public void Post([FromBody]string value) | |
32 | + //{ | |
33 | + //} | |
34 | + public HttpResponseMessage Post([FromBody]JObject userInfo) | |
35 | + { | |
36 | + ILog logger = log4net.LogManager.GetLogger((System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)); | |
37 | + logger.Debug("inside POST"); | |
38 | + //UserInfo userData = new UserInfo(); | |
39 | + //dynamic userData = AIAHTML5.API.Models.Users.GetUserByEmail(userEmail); | |
40 | + //dynamic userData = AIAHTML5.API.Models.Users.GetUserByEmail(userInfo); | |
41 | + //userData = AIAHTML5.API.Models.Users.GetUserByEmail(userInfo); | |
42 | + dynamic userData = AIAHTML5.API.Models.Users.GetUserByEmail(userInfo); | |
43 | + if (Convert.ToString(userData) != AIAConstants.USER_NOT_FOUND && Convert.ToString(userData) != AIAConstants.ERROR_IN_FECTHING_DETAILS) | |
44 | + { | |
45 | + bool res = false; | |
46 | + string userDetails = Newtonsoft.Json.JsonConvert.SerializeObject(userData); | |
47 | + if (Convert.ToBoolean(userInfo["isPassword"])) | |
48 | + res = AIAHTML5.API.Models.ResetUser.SendEmail(userData, true); | |
49 | + else | |
50 | + res = AIAHTML5.API.Models.ResetUser.SendEmail(userData, false); | |
51 | + | |
52 | + if (res) | |
53 | + return new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(userDetails) }; | |
54 | + else | |
55 | + return new HttpResponseMessage { StatusCode = HttpStatusCode.InternalServerError, Content = new StringContent(userData) }; | |
56 | + } | |
57 | + else | |
58 | + { | |
59 | + return new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(userData) }; //new StringContent(userData) | |
60 | + | |
61 | + } | |
62 | + } | |
63 | + | |
64 | + | |
65 | + //public HttpResponseMessage Post([FromBody]JObject userInfo) | |
66 | + //{ | |
67 | + // ILog logger = log4net.LogManager.GetLogger((System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)); | |
68 | + // logger.Debug("inside POST"); | |
69 | + // //UserInfo userData = new UserInfo(); | |
70 | + // //dynamic userData = AIAHTML5.API.Models.Users.GetUserByEmail(userEmail); | |
71 | + // //dynamic userData = AIAHTML5.API.Models.Users.GetUserByEmail(userInfo); | |
72 | + // //userData = AIAHTML5.API.Models.Users.GetUserByEmail(userInfo); | |
73 | + // dynamic userData = AIAHTML5.API.Models.Users.GetUserByEmail(userInfo); | |
74 | + // if (Convert.ToString(userData) != AIAConstants.USER_NOT_FOUND && Convert.ToString(userData) != AIAConstants.ERROR_IN_FECTHING_DETAILS) | |
75 | + // { | |
76 | + // bool res = false; | |
77 | + // string userDetails = Newtonsoft.Json.JsonConvert.SerializeObject(userData); | |
78 | + // if (Convert.ToBoolean(userInfo["isPassword"])) | |
79 | + // res = AIAHTML5.API.Models.ResetUser.SendEmail(userData, true); | |
80 | + // else | |
81 | + // res = AIAHTML5.API.Models.ResetUser.SendEmail(userData, false); | |
82 | + | |
83 | + // if (res) | |
84 | + // return new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(userDetails) }; | |
85 | + // else | |
86 | + // return new HttpResponseMessage { StatusCode = HttpStatusCode.InternalServerError, Content = new StringContent(userData) }; | |
87 | + // } | |
88 | + // else | |
89 | + // { | |
90 | + // return new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(userData) }; //new StringContent(userData) | |
91 | + | |
92 | + // } | |
93 | + //} | |
94 | + // PUT api/<controller>/5 | |
95 | + public void Put(int id, [FromBody]string value) | |
96 | + { | |
97 | + } | |
98 | + | |
99 | + // DELETE api/<controller>/5 | |
100 | + public void Delete(int id) | |
101 | + { | |
102 | + } | |
103 | + } | |
104 | +} | |
0 | 105 | \ No newline at end of file | ... | ... |
400-SOURCECODE/AIAHTML5.API/Controllers/ResetPasswordController.cs
0 → 100644
1 | +using System; | |
2 | +using System.Collections.Generic; | |
3 | +using System.Linq; | |
4 | +using System.Net; | |
5 | +using System.Net.Http; | |
6 | +using System.Web.Http; | |
7 | +using AIAHTML5.API.Constants; | |
8 | +using log4net; | |
9 | +using Newtonsoft.Json; | |
10 | +using Newtonsoft.Json.Linq; | |
11 | +using AIAHTML5.API.Models; | |
12 | +using AIAHTML5.API.Utility; | |
13 | + | |
14 | +namespace AIAHTML5.API.Controllers | |
15 | +{ | |
16 | + public class ResetPasswordController : ApiController | |
17 | + { | |
18 | + // GET api/<controller> | |
19 | + public IEnumerable<string> Get() | |
20 | + { | |
21 | + return new string[] { "value1", "value2" }; | |
22 | + } | |
23 | + | |
24 | + // GET api/<controller>/5 | |
25 | + public string Get(int id) | |
26 | + { | |
27 | + return "value"; | |
28 | + } | |
29 | + | |
30 | + // POST api/<controller> | |
31 | + //public void Post([FromBody]string value) | |
32 | + //{ | |
33 | + //} | |
34 | + public HttpResponseMessage Post([FromBody]JObject userInfo) | |
35 | + { | |
36 | + ILog logger = log4net.LogManager.GetLogger((System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)); | |
37 | + logger.Debug("inside POST"); | |
38 | + dynamic userData = AIAHTML5.API.Models.Users.GetUserByEmail(userInfo); | |
39 | + if (Convert.ToString(userData) != AIAConstants.USER_NOT_FOUND && Convert.ToString(userData) != AIAConstants.ERROR_IN_FECTHING_DETAILS) | |
40 | + { | |
41 | + dynamic updatedInfo = AIAHTML5.API.Models.Users.UpdatePassword(userInfo); | |
42 | + string upInfo = Newtonsoft.Json.JsonConvert.SerializeObject(updatedInfo); | |
43 | + if(!string.IsNullOrEmpty(Convert.ToString(updatedInfo))) | |
44 | + return new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(upInfo) }; | |
45 | + else | |
46 | + return new HttpResponseMessage { StatusCode = HttpStatusCode.InternalServerError, Content = new StringContent(userData) }; | |
47 | + } | |
48 | + else | |
49 | + { | |
50 | + return new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new StringContent(userData) }; //new StringContent(userData) | |
51 | + | |
52 | + } | |
53 | + } | |
54 | + | |
55 | + // PUT api/<controller>/5 | |
56 | + public void Put(int id, [FromBody]string value) | |
57 | + { | |
58 | + } | |
59 | + | |
60 | + // DELETE api/<controller>/5 | |
61 | + public void Delete(int id) | |
62 | + { | |
63 | + } | |
64 | + } | |
65 | +} | |
0 | 66 | \ No newline at end of file | ... | ... |
400-SOURCECODE/AIAHTML5.API/Models/ResetUser.cs
0 → 100644
1 | +using System; | |
2 | +using System.Collections.Generic; | |
3 | +using System.Linq; | |
4 | +using System.Web; | |
5 | +using MongoDB.Driver; | |
6 | +using MongoDB.Bson; | |
7 | +using AIAHTML5.API.Properties; | |
8 | +using AIAHTML5.API.Constants; | |
9 | +using log4net; | |
10 | +using System.Net.Mail; | |
11 | +using AIAHTML5.API.Utility; | |
12 | +using System.Text; | |
13 | +using System.IO; | |
14 | +using System.Net.Mime; | |
15 | + | |
16 | +namespace AIAHTML5.API.Models | |
17 | +{ | |
18 | + public class ResetUser | |
19 | + { | |
20 | + public static bool SendEmail(dynamic UserDetails, bool isPassword) | |
21 | + { | |
22 | + try | |
23 | + { | |
24 | + List<LinkedResource> lstLinkedResource = new List<LinkedResource>(); | |
25 | + EmailUtility sEmailUtility = new EmailUtility(); | |
26 | + List<string> lstToAddress = new List<string>(); | |
27 | + List<string> lstBccAddress = new List<string>(); | |
28 | + LinkedResource LinkImage; | |
29 | + string ParseText = ""; | |
30 | + int TextPos = 0; | |
31 | + int MinPos = 0; | |
32 | + string ImgSrc = ""; | |
33 | + int Counter = 0; | |
34 | + string sEmailText = string.Empty; | |
35 | + string _userId = string.Empty; | |
36 | + string _password = string.Empty; | |
37 | + string _userMail = string.Empty; | |
38 | + string _userName = string.Empty; | |
39 | + string _fName = string.Empty; | |
40 | + string _lName = string.Empty; | |
41 | + | |
42 | + foreach (KeyValuePair<string, object> kvp in UserDetails) | |
43 | + { | |
44 | + if (kvp.Key == "loginId") | |
45 | + _userId = kvp.Value.ToString(); | |
46 | + | |
47 | + if (kvp.Key == "password") | |
48 | + _password = kvp.Value.ToString(); | |
49 | + | |
50 | + if (kvp.Key == "emailId") | |
51 | + _userMail = kvp.Value.ToString(); | |
52 | + | |
53 | + if (kvp.Key == "firstName") | |
54 | + _fName = kvp.Value.ToString(); | |
55 | + | |
56 | + if (kvp.Key == "lastName") | |
57 | + _lName = kvp.Value.ToString(); | |
58 | + } | |
59 | + | |
60 | + string _fullName = _fName + " " + _lName; | |
61 | + | |
62 | + ImgSrc = "//52.2.38.120/content/images/common/logo-large.png"; | |
63 | + ImgSrc = "//192.168.86.34:82/content/images/common/logo-large.png"; | |
64 | + string _logoPath = HttpContext.Current.Server.MapPath("//52.2.38.120/content/images/common/logo-large.png"); | |
65 | + | |
66 | + string _templatePath = string.Empty; | |
67 | + | |
68 | + if (!isPassword) | |
69 | + _templatePath = "~/Templates/forgot-UserId.html"; | |
70 | + else | |
71 | + _templatePath = "~/Templates/forgot-Password.html"; | |
72 | + | |
73 | + string _resetPassLink = "//192.168.86.34:82?e:"+ HttpUtility.UrlEncode(_userMail); | |
74 | + | |
75 | + | |
76 | + | |
77 | + string mailBody = ResetUser.ReadMailBodyTextFromFile(_templatePath, _userId, _password, _userMail, _fullName, _resetPassLink); | |
78 | + //sBody.Append("<style type='text/css'>strong {font-size: 18px;color: #ffff00;}</style><table width='500' border='0' align='center' cellpadding='0' cellspacing='0'><tbody><tr><td align='center' valign='middle' bgcolor='#393939' style='padding:30px 0 20px 0;'><a href='#'><img src='{logoPath}' alt='AIA' title='AIA' /></a></td></tr><tr><td align='center' valign='top' bgcolor='#808d43' style='padding:20px;'><table width='100%' border='0' align='center' cellpadding='0' cellspacing='0'><tbody><tr><td colspan='2' style=' font-size:32px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>Forgot UserID</td></tr><tr><td colspan='2'> </td><tr><td colspan='2' style='font-size:20px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>Hello {userName}</td><tr><td colspan='2'> </td></tr><tr><td colspan='2' style=' font-size:16px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>You have requested your 'Login ID' for following account: {emailId}</td></tr><tr><td colspan='2'> </td></tr><tr><td colspan='2' style=' font-size:18px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#fff;'>Your login ID is: <strong>{loginId}</strong></td></tr><tr><td colspan='2'> </td></tr><tr><td colspan='2'> </td></tr><tr><td colspan='2'> </td></tr></tbody></table></td></tr><tr><td bgcolor='#f9f2e7' style='padding:20px;'><table width='100%' border='0' align='center' cellpadding='0' cellspacing='0'><tbody><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'>A.D.A.M. – the company that pioneered online health content – is dedicated to creating and offering the most effective and innovative educational solutions possible for teaching medical science and improving health literacy.</td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'> </td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'>Give us a <b>call toll-free at 1-888-278-9614</b> or <em>send us an email</em> if you have any questions or if you need help. It will be our pleasure to help you.</td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'> </td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'> </td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'><em>© 2017 Ebix, Inc. All Rights Reserved. </em></td></tr></tbody></table></td></tr></tbody></table>"); | |
79 | + | |
80 | + lstToAddress.Add(_userMail); | |
81 | + | |
82 | + sEmailText = mailBody; | |
83 | + | |
84 | + // for embedding images in email | |
85 | + if (sEmailText.Contains("<img")) | |
86 | + { | |
87 | + ParseText = sEmailText; | |
88 | + TextPos = ParseText.IndexOf("<img", TextPos); | |
89 | + while (TextPos != -1) | |
90 | + { | |
91 | + TextPos = ParseText.IndexOf("src", TextPos) + 5; | |
92 | + MinPos = ParseText.IndexOf('"', TextPos); | |
93 | + //ImgSrc = ParseText.Substring(TextPos, MinPos - TextPos); | |
94 | + string ImagePath = HttpContext.Current.Server.MapPath(ImgSrc); | |
95 | + LinkImage = new LinkedResource(ImagePath); | |
96 | + Counter++; | |
97 | + LinkImage.ContentId = "Img" + Counter; | |
98 | + sEmailText = sEmailText.Replace("\"" + ImgSrc + "\"", "cid:" + LinkImage.ContentId); | |
99 | + lstLinkedResource.Add(LinkImage); | |
100 | + TextPos = ParseText.IndexOf("<img", TextPos); | |
101 | + } | |
102 | + } | |
103 | + | |
104 | + string _mailSubject = string.Empty; | |
105 | + if(!isPassword) | |
106 | + _mailSubject = "UserID recovery mail for: "; | |
107 | + else | |
108 | + _mailSubject = "Password recovery mail for: "; | |
109 | + | |
110 | + | |
111 | + //LinkedResource logoImage = new LinkedResource(ImgSrc); | |
112 | + ////logoImage.ContentType = MediaTypeNames.Image.Gif; | |
113 | + //logoImage.ContentId = "logo-large"; | |
114 | + //lstLinkedResource.Add(logoImage); | |
115 | + | |
116 | + //sEmailUtility.sAlternateView = AlternateView.CreateAlternateViewFromString(sEmailText, null, "text/html"); | |
117 | + //foreach (var sItem in lstLinkedResource) | |
118 | + //{ | |
119 | + // sEmailUtility.sAlternateView.LinkedResources.Add(sItem); | |
120 | + //} | |
121 | + | |
122 | + | |
123 | + | |
124 | + | |
125 | + sEmailUtility.sHostName = "10.100.12.13"; | |
126 | + sEmailUtility.sFromAddress = "utkarsh.singh@ebix.com"; | |
127 | + sEmailUtility.bIsBodyHtml = true; | |
128 | + sEmailUtility.bEnableSsl = false; | |
129 | + sEmailUtility.sSubject = _mailSubject + _userMail; | |
130 | + sEmailUtility.sBodyText = sEmailText; | |
131 | + sEmailUtility.iPort = 25; | |
132 | + sEmailUtility.sToAddresses = lstToAddress; | |
133 | + sEmailUtility.sBccAddresses = lstBccAddress; | |
134 | + | |
135 | + sEmailUtility.SendSmtpEmail(); | |
136 | + return true; | |
137 | + } | |
138 | + catch (Exception ex) | |
139 | + { | |
140 | + string message = "Exception: " + ex.Message; | |
141 | + return false; | |
142 | + } | |
143 | + } | |
144 | + | |
145 | + protected static string ReadMailBodyTextFromFile(string templatePath, string userId, string password, string userMail, string fullName, string resetPasswordUrl) | |
146 | + { | |
147 | + string fileToRead = string.Empty; | |
148 | + string sBody = string.Empty; | |
149 | + try | |
150 | + { | |
151 | + fileToRead = HttpContext.Current.Server.MapPath(templatePath); | |
152 | + | |
153 | + using (StreamReader reader = new StreamReader(fileToRead)) | |
154 | + { | |
155 | + sBody = reader.ReadToEnd(); | |
156 | + } | |
157 | + | |
158 | + //System.Net.Mail.LinkedResource imageResource = new System.Net.Mail.LinkedResource(logoPath, "image/jpng"); | |
159 | + //imageResource.ContentId = "HDIImage"; | |
160 | + | |
161 | + //sBody = sBody.Replace("{logoPath}", imageResource.ContentStream.ToString()); | |
162 | + sBody = sBody.Replace("{loginId}", userId); | |
163 | + sBody = sBody.Replace("{emailId}", userMail); | |
164 | + sBody = sBody.Replace("{userFullName}", fullName); | |
165 | + sBody = sBody.Replace("{resetPasswordLink}", resetPasswordUrl); | |
166 | + } | |
167 | + catch (Exception e) | |
168 | + { | |
169 | + sBody = "Exception: " + e.Message; | |
170 | + } | |
171 | + return sBody; | |
172 | + } | |
173 | + | |
174 | + protected static AlternateView GetEmbeddedImage(String filePath) | |
175 | + { | |
176 | + LinkedResource inline = new LinkedResource(filePath); | |
177 | + inline.ContentId = Guid.NewGuid().ToString(); | |
178 | + string htmlBody = @"<img src='cid:" + inline.ContentId + @"'/>"; | |
179 | + AlternateView alternateView = AlternateView.CreateAlternateViewFromString(htmlBody, null, MediaTypeNames.Text.Html); | |
180 | + alternateView.LinkedResources.Add(inline); | |
181 | + return alternateView; | |
182 | + } | |
183 | + } | |
184 | +} | |
0 | 185 | \ No newline at end of file | ... | ... |
400-SOURCECODE/AIAHTML5.API/Models/Users.cs
... | ... | @@ -12,7 +12,7 @@ namespace AIAHTML5.API.Models |
12 | 12 | { |
13 | 13 | public class Users |
14 | 14 | { |
15 | - | |
15 | + | |
16 | 16 | |
17 | 17 | internal static dynamic AuthenticateUser(Newtonsoft.Json.Linq.JObject credentials) |
18 | 18 | { |
... | ... | @@ -29,9 +29,9 @@ namespace AIAHTML5.API.Models |
29 | 29 | Builders<dynamic>.Filter.Eq("password", credentials["password"].ToString())}; |
30 | 30 | |
31 | 31 | dynamic userDetails = collection.Find(Builders<dynamic>.Filter.And(filterCondition)).SingleOrDefault(); |
32 | - | |
33 | - | |
34 | - if (userDetails!= null) | |
32 | + | |
33 | + | |
34 | + if (userDetails != null) | |
35 | 35 | { |
36 | 36 | logger.Debug("userDetails.loginId= " + userDetails.loginId); |
37 | 37 | return userDetails; |
... | ... | @@ -41,15 +41,81 @@ namespace AIAHTML5.API.Models |
41 | 41 | return AIAConstants.USER_NOT_FOUND; |
42 | 42 | } |
43 | 43 | } |
44 | - catch(Exception e) | |
44 | + catch (Exception e) | |
45 | 45 | { |
46 | - | |
46 | + | |
47 | 47 | logger.Fatal("Exception in AuthenticateUser for loginId =" + credentials["username"].ToString() + " and password= " + credentials["password"].ToString() + "Exception= " + e.Message); |
48 | - | |
48 | + | |
49 | 49 | string errorMessage = AIAConstants.ERROR_IN_FECTHING_DETAILS; |
50 | 50 | return errorMessage; |
51 | 51 | } |
52 | 52 | |
53 | 53 | } |
54 | + | |
55 | + internal static dynamic GetUserByEmail(Newtonsoft.Json.Linq.JObject userInfo) | |
56 | + { | |
57 | + ILog logger = log4net.LogManager.GetLogger((System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)); | |
58 | + var client = new MongoClient(); | |
59 | + | |
60 | + try | |
61 | + { | |
62 | + | |
63 | + var db = client.GetDatabase(Settings.Default.database); | |
64 | + | |
65 | + var collection = db.GetCollection<dynamic>("Users"); | |
66 | + | |
67 | + FilterDefinition<dynamic> filterCondition = Builders<dynamic>.Filter.Eq("emailId", userInfo["emailId"].ToString().ToLower()); | |
68 | + | |
69 | + dynamic userDetails = collection.Find(Builders<dynamic>.Filter.And(filterCondition)).SingleOrDefault(); | |
70 | + | |
71 | + if (userDetails != null) | |
72 | + return userDetails; | |
73 | + else | |
74 | + return AIAConstants.USER_NOT_FOUND; | |
75 | + } | |
76 | + catch (Exception e) | |
77 | + { | |
78 | + logger.Fatal("Exception= " + e.Message); | |
79 | + return AIAConstants.ERROR_IN_FECTHING_DETAILS; | |
80 | + } | |
81 | + } | |
82 | + | |
83 | + internal static dynamic UpdatePassword(Newtonsoft.Json.Linq.JObject userInfo) | |
84 | + { | |
85 | + ILog logger = log4net.LogManager.GetLogger((System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)); | |
86 | + var client = new MongoClient(); | |
87 | + try | |
88 | + { | |
89 | + //var db = client.GetDatabase(Settings.Default.database); | |
90 | + | |
91 | + //var collection = db.GetCollection<dynamic>("Users"); | |
92 | + | |
93 | + //FilterDefinition<dynamic> filterCondition = Builders<dynamic>.Filter.Eq("emailId", userInfo["emailId"].ToString().ToLower()); | |
94 | + | |
95 | + //dynamic userDetails = collection.Find(Builders<dynamic>.Update.Set<filterCondition>("password", userInfo["newpass"].ToString())); | |
96 | + | |
97 | + //if (userDetails != null) | |
98 | + // return userDetails; | |
99 | + //else | |
100 | + // return AIAConstants.USER_NOT_FOUND; | |
101 | + | |
102 | + var db = client.GetDatabase(Settings.Default.database); | |
103 | + //var collection = db.GetCollection<dynamic>("Users"); | |
104 | + var collection = db.GetCollection<BsonDocument>("Users"); | |
105 | + var filter = Builders<BsonDocument>.Filter.Eq("emailId", userInfo["emailId"].ToString()); | |
106 | + var update = Builders<BsonDocument>.Update.Set("password", userInfo["newpass"].ToString()).CurrentDate("modifiedDate"); | |
107 | + var result = collection.UpdateOne(filter, update); | |
108 | + | |
109 | + if (result != null) | |
110 | + return result; | |
111 | + else | |
112 | + return AIAConstants.USER_NOT_FOUND; | |
113 | + } | |
114 | + catch (Exception e) | |
115 | + { | |
116 | + logger.Fatal("Exception= " + e.Message); | |
117 | + return AIAConstants.ERROR_IN_FECTHING_DETAILS; | |
118 | + } | |
119 | + } | |
54 | 120 | } |
55 | 121 | } |
56 | 122 | \ No newline at end of file | ... | ... |
400-SOURCECODE/AIAHTML5.API/Templates/Forgot-UserId.html
0 → 100644
1 | +<style type='text/css'> | |
2 | + strong { | |
3 | + font-size: 18px; | |
4 | + color: #ffff00; | |
5 | + } | |
6 | +</style> | |
7 | +<table width='500' border='0' align='center' cellpadding='0' cellspacing='0'> | |
8 | + <tbody> | |
9 | + <tr> | |
10 | + <td align='center' valign='middle' bgcolor='#393939' style='padding:30px 0 20px 0;'> | |
11 | + <a href='#'><img src='{logoPath}' alt='AIA' title='AIA' /></a> | |
12 | + </td> | |
13 | + </tr> | |
14 | + <tr> | |
15 | + <td align='center' valign='top' bgcolor='#808d43' style='padding:20px;'> | |
16 | + <table width='100%' border='0' align='center' cellpadding='0' cellspacing='0'> | |
17 | + <tbody> | |
18 | + <tr> | |
19 | + <td colspan='2' style=' font-size:32px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>Forgot UserID</td> | |
20 | + </tr> | |
21 | + <tr> | |
22 | + <td colspan='2'> </td> | |
23 | + </tr> | |
24 | + <tr> | |
25 | + <td colspan='2' style='font-size:20px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>Hello {userFullName}</td> | |
26 | + </tr> | |
27 | + <tr> | |
28 | + <td colspan='2'> </td> | |
29 | + </tr> | |
30 | + <tr> | |
31 | + <td colspan='2' style=' font-size:16px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>You have requested your 'Login ID' for following account: {emailId}</td> | |
32 | + </tr> | |
33 | + <tr> | |
34 | + <td colspan='2'> </td> | |
35 | + </tr> | |
36 | + <tr> | |
37 | + <td colspan='2' style=' font-size:18px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#fff;'>Your login ID is: <strong>{loginId}</strong></td> | |
38 | + </tr> | |
39 | + <tr> | |
40 | + <td colspan='2'> </td></tr><tr><td colspan='2'> </td> | |
41 | + </tr> | |
42 | + <tr> | |
43 | + <td colspan='2'> </td> | |
44 | + </tr> | |
45 | + </tbody> | |
46 | + </table> | |
47 | + </td> | |
48 | + </tr> | |
49 | + <tr> | |
50 | + <td bgcolor='#f9f2e7' style='padding:20px;'> | |
51 | + <table width='100%' border='0' align='center' cellpadding='0' cellspacing='0'> | |
52 | + <tbody> | |
53 | + <tr> | |
54 | + <td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'>A.D.A.M. – the company that pioneered online health content – is dedicated to creating and offering the most effective and innovative educational solutions possible for teaching medical science and improving health literacy.</td> | |
55 | + </tr> | |
56 | + <tr> | |
57 | + <td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'> </td> | |
58 | + </tr> | |
59 | + <tr> | |
60 | + <td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'>Give us a <b>call toll-free at 1-888-278-9614</b> or <em>send us an email</em> if you have any questions or if you need help. It will be our pleasure to help you.</td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'> </td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'> </td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'><em>© 2017 Ebix, Inc. All Rights Reserved. </em></td> | |
61 | + </tr> | |
62 | + </tbody> | |
63 | + </table> | |
64 | + </td> | |
65 | + </tr> | |
66 | + </tbody> | |
67 | +</table> | |
0 | 68 | \ No newline at end of file | ... | ... |
400-SOURCECODE/AIAHTML5.API/Templates/forgot-Password.html
0 → 100644
1 | +<style type='text/css'> | |
2 | + strong { | |
3 | + font-size: 18px; | |
4 | + color: #ffff00; | |
5 | + } | |
6 | +</style> | |
7 | +<table width='500' border='0' align='center' cellpadding='0' cellspacing='0'> | |
8 | + <tbody> | |
9 | + <tr> | |
10 | + <td align='center' valign='middle' bgcolor='#393939' style='padding:30px 0 20px 0;'> | |
11 | + <a href='#'><img src='{logoPath}' alt='AIA' title='AIA' /></a> | |
12 | + </td> | |
13 | + </tr> | |
14 | + <tr> | |
15 | + <td align='center' valign='top' bgcolor='#808d43' style='padding:20px;'> | |
16 | + <table width='100%' border='0' align='center' cellpadding='0' cellspacing='0'> | |
17 | + <tbody> | |
18 | + <tr> | |
19 | + <td colspan='2' style=' font-size:32px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>Forgot Password</td> | |
20 | + </tr> | |
21 | + <tr> | |
22 | + <td colspan='2'> </td> | |
23 | + </tr> | |
24 | + <tr> | |
25 | + <td colspan='2' style='font-size:20px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>Hi,</td> | |
26 | + </tr> | |
27 | + <tr> | |
28 | + <td colspan='2'> </td> | |
29 | + </tr> | |
30 | + <tr> | |
31 | + <td colspan='2' style=' font-size:16px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>You have requested password reset for your account: {emailId}</td> | |
32 | + </tr> | |
33 | + <tr> | |
34 | + <td colspan='2'> </td> | |
35 | + </tr> | |
36 | + <tr> | |
37 | + <td colspan='2' style=' font-size:16px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>You can reset your password by clicking the link below:</td> | |
38 | + </tr> | |
39 | + <tr> | |
40 | + <td colspan='2' style=' font-size:16px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'><a href="{resetPasswordLink}">{resetPasswordLink}</a></td> | |
41 | + </tr> | |
42 | + <tr> | |
43 | + <td colspan='2'> </td> | |
44 | + </tr> | |
45 | + <tr> | |
46 | + <td colspan='2' style=' font-size:16px; font-weight:bold; color:#fff; font-family:Gotham, Helvetica, Arial, sans-serif'>If you have not requested for password reset, please ignore this mail.</td> | |
47 | + </tr> | |
48 | + <tr> | |
49 | + <td colspan='2'> </td> | |
50 | + </tr> | |
51 | + <tr> | |
52 | + <td colspan='2'> </td> | |
53 | + </tr> | |
54 | + <tr> | |
55 | + <td colspan='2'> </td> | |
56 | + </tr> | |
57 | + </tbody> | |
58 | + </table> | |
59 | + </td> | |
60 | + </tr> | |
61 | + <tr> | |
62 | + <td bgcolor='#f9f2e7' style='padding:20px;'> | |
63 | + <table width='100%' border='0' align='center' cellpadding='0' cellspacing='0'> | |
64 | + <tbody> | |
65 | + <tr> | |
66 | + <td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'>A.D.A.M. – the company that pioneered online health content – is dedicated to creating and offering the most effective and innovative educational solutions possible for teaching medical science and improving health literacy.</td> | |
67 | + </tr> | |
68 | + <tr> | |
69 | + <td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'> </td> | |
70 | + </tr> | |
71 | + <tr> | |
72 | + <td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'>Give us a <b>call toll-free at 1-888-278-9614</b> or <em>send us an email</em> if you have any questions or if you need help. It will be our pleasure to help you.</td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'> </td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'> </td></tr><tr><td style=' font-size:12px; font-family:Gotham, Helvetica, Arial, sans-serif; color:#000000;'><em>© 2017 Ebix, Inc. All Rights Reserved. </em></td> | |
73 | + </tr> | |
74 | + </tbody> | |
75 | + </table> | |
76 | + </td> | |
77 | + </tr> | |
78 | + </tbody> | |
79 | +</table> | |
0 | 80 | \ No newline at end of file | ... | ... |
400-SOURCECODE/AIAHTML5.API/Utility/EmailUtility.cs
0 → 100644
1 | +using System; | |
2 | +using System.Collections.Generic; | |
3 | +using System.Linq; | |
4 | +using System.Web; | |
5 | +using System.Configuration; | |
6 | +using System.Collections; | |
7 | +using System.Xml; | |
8 | +using System.Text; | |
9 | +using System.IO; | |
10 | +using System.Net.Mail; | |
11 | + | |
12 | +namespace AIAHTML5.API.Utility | |
13 | +{ | |
14 | + | |
15 | + public class EmailUtility | |
16 | + { | |
17 | + public string sFromAddress { get; set; } | |
18 | + public List<string> sToAddresses { get; set; } | |
19 | + public List<string> sBccAddresses { get; set; } | |
20 | + public string sHostName { get; set; } | |
21 | + public string sSubject { get; set; } | |
22 | + public int iPort { get; set; } | |
23 | + public bool bEnableSsl { get; set; } | |
24 | + public string sUserName { get; set; } | |
25 | + public string sPassword { get; set; } | |
26 | + public bool bIsBodyHtml { get; set; } | |
27 | + public List<Attachment> sAttachments { get; set; } | |
28 | + public string sBodyText { get; set; } | |
29 | + public AlternateView sAlternateView { get; set; } | |
30 | + | |
31 | + public void SendMail(MailMessage mm) | |
32 | + { | |
33 | + SmtpClient smtp = new SmtpClient(); | |
34 | + smtp.Host = ConfigurationManager.AppSettings["SMTPAddress"]; | |
35 | + smtp.EnableSsl = Convert.ToBoolean(ConfigurationManager.AppSettings["EnableSSL"]); | |
36 | + System.Net.NetworkCredential NetworkCred = new System.Net.NetworkCredential(mm.From.ToString(), ConfigurationManager.AppSettings["SenderPassword"]); | |
37 | + smtp.Credentials = NetworkCred; | |
38 | + smtp.Port = Convert.ToInt32(ConfigurationManager.AppSettings["SMTPPort"]); | |
39 | + /*string ccAddress = ConfigurationManager.AppSettings["NotifyCopyAddress"]; | |
40 | + string[] emailArr = ccAddress.Split(','); | |
41 | + if (mm.From.ToString().Equals("pfizerhelp@ebix.com")) | |
42 | + { | |
43 | + ccAddress = emailArr[0]; | |
44 | + if (!ccAddress.Equals("")) | |
45 | + { | |
46 | + mm.Bcc.Add(ccAddress); | |
47 | + } | |
48 | + } | |
49 | + else | |
50 | + { | |
51 | + if (!ccAddress.Equals("")) | |
52 | + { | |
53 | + mm.Bcc.Add(ccAddress); | |
54 | + } | |
55 | + }*/ | |
56 | + | |
57 | + | |
58 | + smtp.Send(mm); | |
59 | + } | |
60 | + | |
61 | + public void SendSmtpEmail() | |
62 | + { | |
63 | + try | |
64 | + { | |
65 | + MailMessage sMail = new MailMessage(); | |
66 | + SmtpClient SmtpServer = new SmtpClient(sHostName); | |
67 | + string recipientEmailAddress = string.Empty; | |
68 | + | |
69 | + | |
70 | + if (sToAddresses != null) | |
71 | + { | |
72 | + foreach (var sItem in sToAddresses) | |
73 | + { | |
74 | + sMail.To.Add(sItem); | |
75 | + | |
76 | + } | |
77 | + } | |
78 | + | |
79 | + if (sBccAddresses != null) | |
80 | + { | |
81 | + foreach (var sItem in sBccAddresses) | |
82 | + { | |
83 | + sMail.Bcc.Add(sItem); | |
84 | + } | |
85 | + } | |
86 | + | |
87 | + sMail.IsBodyHtml = bIsBodyHtml; | |
88 | + | |
89 | + if (sAlternateView != null) | |
90 | + { | |
91 | + sMail.AlternateViews.Add(sAlternateView); | |
92 | + } | |
93 | + else | |
94 | + { | |
95 | + sMail.Body = sBodyText; | |
96 | + } | |
97 | + | |
98 | + sMail.Subject = sSubject; | |
99 | + if (sAttachments != null) | |
100 | + { | |
101 | + foreach (var sItem in sAttachments) | |
102 | + { | |
103 | + sMail.Attachments.Add(sItem); | |
104 | + } | |
105 | + } | |
106 | + | |
107 | + SmtpServer.Port = iPort; | |
108 | + SmtpServer.Credentials = new System.Net.NetworkCredential(sUserName, sPassword); | |
109 | + SmtpServer.EnableSsl = bEnableSsl; | |
110 | + | |
111 | + // SmtpServer.Send(sMail); | |
112 | + using (MailMessage mm = new MailMessage(sFromAddress, sMail.To.ToString())) | |
113 | + //using (MailMessage mm = new MailMessage()) | |
114 | + { | |
115 | + mm.Subject = sSubject; | |
116 | + mm.IsBodyHtml = bIsBodyHtml; | |
117 | + // mm.To.Add(sMail.To.ToString()); | |
118 | + //mm.From = new MailAddress(sFromAddress, "AdamOnDemand"); | |
119 | + if (sAlternateView != null) | |
120 | + { | |
121 | + mm.AlternateViews.Add(sAlternateView); | |
122 | + } | |
123 | + else | |
124 | + { | |
125 | + mm.Body = sBodyText; | |
126 | + } | |
127 | + // mm.Body = sAlternateView; | |
128 | + // string bccAddress = (!string.IsNullOrEmpty(sBccAddresses) ? lstBccAddress : ConfigurationManager.AppSettings["AccountsEmailAddress"]); | |
129 | + /* if (sBccAddresses != null) | |
130 | + { | |
131 | + foreach (var sItem in sBccAddresses) | |
132 | + { | |
133 | + mm.Bcc.Add(sItem); | |
134 | + } | |
135 | + }*/ | |
136 | + //else | |
137 | + //{ | |
138 | + // string bccAddress = ConfigurationManager.AppSettings["AccountsEmailAddress"]; | |
139 | + // mm.Bcc.Add(bccAddress); | |
140 | + //} | |
141 | + mm.IsBodyHtml = true; | |
142 | + SendMail(mm); | |
143 | + } | |
144 | + | |
145 | + } | |
146 | + catch (Exception ex) | |
147 | + { | |
148 | + throw ex; | |
149 | + } | |
150 | + } | |
151 | + | |
152 | + | |
153 | + //public static bool SendEmail(dynamic UserDetails, bool isPassword) | |
154 | + //{ | |
155 | + // try | |
156 | + // { | |
157 | + // List<LinkedResource> lstLinkedResource = new List<LinkedResource>(); | |
158 | + // EmailUtility sEmailUtility = new EmailUtility(); | |
159 | + // List<string> lstToAddress = new List<string>(); | |
160 | + // List<string> lstBccAddress = new List<string>(); | |
161 | + // LinkedResource LinkImage; | |
162 | + // string AdminNames = ""; | |
163 | + // string sEmailText = ""; | |
164 | + // string ParseText = ""; | |
165 | + // int TextPos = 0; | |
166 | + // int MinPos = 0; | |
167 | + // string ImgSrc = ""; | |
168 | + // int Counter = 0; | |
169 | + | |
170 | + // string _userId = string.Empty; | |
171 | + // string _password = string.Empty; | |
172 | + // string _userMail = string.Empty; | |
173 | + | |
174 | + // foreach (KeyValuePair<string, object> kvp in UserDetails) | |
175 | + // { | |
176 | + // if(kvp.Key == "loginId") | |
177 | + // _userId = kvp.Value.ToString(); | |
178 | + | |
179 | + // if(kvp.Key == "password") | |
180 | + // _password = kvp.Value.ToString(); | |
181 | + | |
182 | + // if(kvp.Key == "emailId") | |
183 | + // _userMail = kvp.Value.ToString(); | |
184 | + // } | |
185 | + | |
186 | + // if (isPassword) | |
187 | + // sEmailText = "Your password is: <b>" + _password; | |
188 | + // else | |
189 | + // sEmailText = "Your LoginID is: <b>" + _userId; | |
190 | + | |
191 | + // lstToAddress.Add(_userMail); | |
192 | + | |
193 | + // sEmailUtility.sSubject = "Recovery mail [" + _userMail + "]"; | |
194 | + | |
195 | + // ////// for embedding images in email | |
196 | + // ////if (sEmailText.Contains("<img")) | |
197 | + // ////{ | |
198 | + // //// ParseText = sEmailText; | |
199 | + // //// TextPos = ParseText.IndexOf("<img", TextPos); | |
200 | + // //// while (TextPos != -1) | |
201 | + // //// { | |
202 | + // //// TextPos = ParseText.IndexOf("src", TextPos) + 5; | |
203 | + // //// MinPos = ParseText.IndexOf('"', TextPos); | |
204 | + // //// ImgSrc = ParseText.Substring(TextPos, MinPos - TextPos); | |
205 | + // //// string ImagePath = HttpContext.Current.Server.MapPath(ImgSrc); | |
206 | + // //// LinkImage = new LinkedResource(ImagePath); | |
207 | + // //// Counter++; | |
208 | + // //// LinkImage.ContentId = "Img" + Counter; | |
209 | + // //// sEmailText = sEmailText.Replace("\"" + ImgSrc + "\"", "cid:" + LinkImage.ContentId); | |
210 | + // //// lstLinkedResource.Add(LinkImage); | |
211 | + // //// TextPos = ParseText.IndexOf("<img", TextPos); | |
212 | + // //// } | |
213 | + // ////} | |
214 | + | |
215 | + // /*foreach (var sItem in lstEmailParams) | |
216 | + // { | |
217 | + // sEmailText = sEmailText.Replace(sItem.Item1, sItem.Item2); | |
218 | + // }*/ | |
219 | + | |
220 | + // /*if (!string.IsNullOrEmpty(recipientEmailAddress)) | |
221 | + // { | |
222 | + // string[] sStrArr = recipientEmailAddress.Split(','); | |
223 | + // for (int i = 0; i < sStrArr.Length - 1; i++) | |
224 | + // { | |
225 | + // string sEmail = sStrArr[i]; | |
226 | + // lstToAddress.Add(sStrArr[i]); | |
227 | + // } | |
228 | + // }*/ | |
229 | + | |
230 | + | |
231 | + // /*if (!string.IsNullOrEmpty(bccEmailAddress)) | |
232 | + // { | |
233 | + // string[] sStrArr = bccEmailAddress.Split(','); | |
234 | + // for (int i = 0; i < sStrArr.Length - 1; i++) | |
235 | + // { | |
236 | + // string sEmail = sStrArr[i]; | |
237 | + // lstBccAddress.Add(sEmail); | |
238 | + // //AdminNames += context.Users.Where(El => El.EmailAddress == sEmail).First().FirstName + ", "; | |
239 | + // } | |
240 | + // // AdminNames = AdminNames.Substring(0, AdminNames.Length - 2); | |
241 | + // sEmailText = sEmailText.Replace("#ADMINNAMES#", AdminNames); | |
242 | + // }*/ | |
243 | + | |
244 | + // sEmailUtility.sAlternateView = AlternateView.CreateAlternateViewFromString(sEmailText, null, "text/html"); | |
245 | + // foreach (var sItem in lstLinkedResource) | |
246 | + // { | |
247 | + // sEmailUtility.sAlternateView.LinkedResources.Add(sItem); | |
248 | + // } | |
249 | + | |
250 | + // sEmailUtility.sHostName = "10.100.12.13"; | |
251 | + // sEmailUtility.sFromAddress = "utkarsh.singh@ebix.com"; | |
252 | + // sEmailUtility.bIsBodyHtml = true; | |
253 | + // sEmailUtility.bEnableSsl = false; | |
254 | + // //sEmailUtility.sSubject = "Recovery mail [User Information]"; | |
255 | + // sEmailUtility.iPort = 25; | |
256 | + // sEmailUtility.sToAddresses = lstToAddress;//Convert.ToString(UserDetails[7]); ; | |
257 | + // sEmailUtility.sBccAddresses = lstBccAddress; | |
258 | + | |
259 | + // sEmailUtility.SendSmtpEmail(); | |
260 | + // return true; | |
261 | + // } | |
262 | + // catch (Exception ex) | |
263 | + // { | |
264 | + // return false; | |
265 | + // } | |
266 | + //} | |
267 | + } | |
268 | +} | |
0 | 269 | \ No newline at end of file | ... | ... |
400-SOURCECODE/AIAHTML5.API/Web.config
... | ... | @@ -31,6 +31,13 @@ |
31 | 31 | </log4net> |
32 | 32 | |
33 | 33 | <appSettings> |
34 | + <add key="SenderEmailAddress" value="support@interactiveanatomy.com" /> | |
35 | + <add key="ErrorNotificationEmailAddress" value="support@interactiveanatomy.com" /> | |
36 | + <add key="SenderPassword" value="" /> | |
37 | + <add key="SMTPAddress" value="smtp.emailsrvr.com" /> | |
38 | + <add key="SMTPPort" value="587" /> | |
39 | + <add key="EnableSSL" value="false" /> | |
40 | + <add key="NotifyEmailAddress" value="support@interactiveanatomy.com" /> | |
34 | 41 | </appSettings> |
35 | 42 | <system.web> |
36 | 43 | <compilation debug="true" targetFramework="4.5" /> | ... | ... |
400-SOURCECODE/AIAHTML5.API/bin/AIAHTML5.API.dll
No preview for this file type
400-SOURCECODE/AIAHTML5.API/bin/AIAHTML5.API.dll.config
... | ... | @@ -31,6 +31,13 @@ |
31 | 31 | </log4net> |
32 | 32 | |
33 | 33 | <appSettings> |
34 | + <add key="SenderEmailAddress" value="utkarsh.singh@ebix.com" /> | |
35 | + <add key="ErrorNotificationEmailAddress" value="utkarsh.singh@ebix.com" /> | |
36 | + <add key="SenderPassword" value="utkarsh@3bix" /> | |
37 | + <add key="SMTPAddress" value="smtp.emailsrvr.com" /> | |
38 | + <add key="SMTPPort" value="587" /> | |
39 | + <add key="EnableSSL" value="false" /> | |
40 | + <add key="NotifyEmailAddress" value="ashish.jain@ebix.com" /> | |
34 | 41 | </appSettings> |
35 | 42 | <system.web> |
36 | 43 | <compilation debug="true" targetFramework="4.5" /> | ... | ... |
400-SOURCECODE/AIAHTML5.API/bin/AIAHTML5.API.pdb
No preview for this file type
400-SOURCECODE/AIAHTML5.Web/app/controllers/HomeController.js
... | ... | @@ -76,17 +76,23 @@ function ($rootScope, Modules, $log, $location, $timeout, DataService, Authentic |
76 | 76 | $rootScope.initializeAIA = function () { |
77 | 77 | |
78 | 78 | $rootScope.isLoading = false; |
79 | - $rootScope.isVisibleLogin = true; | |
80 | - | |
79 | + $rootScope.isVisibleLogin = false; | |
80 | + $rootScope.isVisibleResetPass = true; | |
81 | + //VerifyUrlForQuerystring(); | |
81 | 82 | getUserDetails(); |
82 | 83 | } |
83 | 84 | |
84 | 85 | $rootScope.userInfo = { |
85 | 86 | username: null, |
86 | - password: null | |
87 | + password: null, | |
88 | + emailId: null, | |
89 | + newpass: null, | |
90 | + newpass2: null | |
87 | 91 | }; |
88 | 92 | $rootScope.userData ; |
89 | - $rootScope.userModules ; | |
93 | + $rootScope.userModules; | |
94 | + | |
95 | + $location.search('email', $rootScope.userInfo.emailId); | |
90 | 96 | |
91 | 97 | $rootScope.AuthenticateUser = function (userInfo) { |
92 | 98 | $rootScope.isVisibleLogin = false; |
... | ... | @@ -152,9 +158,60 @@ function ($rootScope, Modules, $log, $location, $timeout, DataService, Authentic |
152 | 158 | } |
153 | 159 | } |
154 | 160 | |
161 | + $rootScope.GetUserByEmail = function (userInfo, missingPass) { | |
162 | + | |
163 | + if ((userInfo.emailId != null) && (userInfo.emailId != '')) { | |
164 | + if (validateEmail(userInfo.emailId)) { | |
165 | + if (missingPass == 'true') | |
166 | + userInfo.isPassword = true; | |
167 | + else | |
168 | + userInfo.isPassword = false; | |
169 | + | |
170 | + AuthenticationService.GetUserByEmail(userInfo); | |
171 | + } | |
172 | + else { | |
173 | + alert("Please, enter correct email id"); | |
174 | + } | |
175 | + } | |
176 | + else { | |
177 | + alert("Please, enter your email id"); | |
178 | + } | |
179 | + }; | |
180 | + | |
181 | + function validateEmail(email) { | |
182 | + var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; | |
183 | + return re.test(email); | |
184 | + } | |
185 | + | |
155 | 186 | $(document).ready(function () { |
156 | 187 | getUserDetails(); |
157 | - }); | |
188 | + }); | |
189 | + | |
190 | + $rootScope.UpdateUserPassword = function (userInfo) { | |
191 | + userInfo.emailId = 'utkarsh.singh@ebix.com'; | |
192 | + AuthenticationService.UpdateUserPassword(userInfo) | |
193 | + .then( | |
194 | + function (result) { | |
195 | + if (result == LoginConstants.USER_NOT_FOUND) { | |
196 | + | |
197 | + alert(result); | |
198 | + } | |
199 | + else if (result == LoginConstants.ERROR_IN_FECTHING_DETAILS) { | |
200 | + alert(result); | |
201 | + } | |
202 | + else { | |
203 | + if (result.loginId != undefined || result.loginId != "" || result.loginId != null) { | |
204 | + alert('Password updated successfully.'); | |
205 | + $rootScope.isVisibleLogin = true; | |
206 | + $rootScope.isVisibleResetPass = false; | |
207 | + } | |
208 | + } | |
209 | + }, | |
210 | + function (error) { | |
211 | + console.log(' Error in authentication = ' + error.statusText); | |
212 | + alert(LoginConstants.ERROR_IN_FECTHING_DETAILS); | |
213 | + }); | |
214 | + } | |
158 | 215 | |
159 | 216 | $rootScope.$on("$locationChangeSuccess", function () { |
160 | 217 | |
... | ... | @@ -2623,7 +2680,7 @@ function ($rootScope, Modules, $log, $location, $timeout, DataService, Authentic |
2623 | 2680 | }; |
2624 | 2681 | |
2625 | 2682 | $rootScope.ShowPrintWindow = function () { // Print Active Viewer |
2626 | - html2canvas($("#canvasDiv"), { | |
2683 | + /*html2canvas($("#canvasDiv"), { | |
2627 | 2684 | onrendered: function (canvas) { |
2628 | 2685 | var dataURL = canvas.toDataURL("image/jpeg"); |
2629 | 2686 | var imageToPrint = new Image(); |
... | ... | @@ -2635,7 +2692,8 @@ function ($rootScope, Modules, $log, $location, $timeout, DataService, Authentic |
2635 | 2692 | |
2636 | 2693 | PrintDIVContent('printBox'); // Open Print Window |
2637 | 2694 | } |
2638 | - }); | |
2695 | + });*/ | |
2696 | + OpenResetPasswordHtmlPage(); | |
2639 | 2697 | }; |
2640 | 2698 | |
2641 | 2699 | $rootScope.ShowPrintPreviewWindow = function (event) { // Print Preview |
... | ... | @@ -2794,7 +2852,7 @@ function ($rootScope, Modules, $log, $location, $timeout, DataService, Authentic |
2794 | 2852 | console.log('close') |
2795 | 2853 | }); |
2796 | 2854 | |
2797 | - $rootScope.ShowPrintWindow = function () { // Print Active Viewer | |
2855 | + /*$rootScope.ShowPrintWindow = function () { // Print Active Viewer | |
2798 | 2856 | html2canvas($("#canvasDiv"), { |
2799 | 2857 | onrendered: function (canvas) { |
2800 | 2858 | var dataURL = canvas.toDataURL("image/jpeg"); |
... | ... | @@ -2808,7 +2866,7 @@ function ($rootScope, Modules, $log, $location, $timeout, DataService, Authentic |
2808 | 2866 | PrintDivContentByID('printBox'); // Open Print Window |
2809 | 2867 | } |
2810 | 2868 | }); |
2811 | - }; | |
2869 | + };*/ | |
2812 | 2870 | $rootScope.restrictBodySystemList = function () { |
2813 | 2871 | var RestrictListDiv = document.getElementById("restrictListDiv"); |
2814 | 2872 | if (RestrictListDiv.style.display == 'block') { |
... | ... | @@ -2820,6 +2878,36 @@ function ($rootScope, Modules, $log, $location, $timeout, DataService, Authentic |
2820 | 2878 | $(".restrict-carret-icon").css({ "transform": "rotate(90deg)", "-moz-transform": "rotate(90deg)", "-webkit-transform": "rotate(90deg)", "-ms-transform": "rotate(90deg)" }); |
2821 | 2879 | |
2822 | 2880 | } |
2823 | - | |
2881 | + | |
2882 | + function OpenResetPasswordHtmlPage() { | |
2883 | + var url = 'app/views/home/resetPwd.html'; | |
2884 | + $location.url(url); | |
2885 | + $window.location.url(url); | |
2886 | + }; | |
2887 | + | |
2888 | + function ValidateResetForm() { | |
2889 | + //if(!('#pass').val().length) | |
2890 | + } | |
2891 | + | |
2892 | + function VerifyUrlForQuerystring() { | |
2893 | + var url = $location.url(); | |
2894 | + | |
2895 | + var field = 'em'; | |
2896 | + //var url = window.location.href; | |
2897 | + var htmFileUrl = 'app/views/Home/resetPwd.html'; //<!--#resetpass" href="/app/views/Home/resetPwd.html"--> | |
2898 | + | |
2899 | + if (url.indexOf('?' + field + '=') != -1) { | |
2900 | + $rootScope.isVisibleLogin = false; | |
2901 | + $rootScope.isVisibleResetPass = true; | |
2902 | + $(".modal-content").load(htmFileUrl).dialog({ modal: true }); | |
2903 | + return true; | |
2904 | + } | |
2905 | + else { | |
2906 | + $rootScope.isVisibleLogin = true; | |
2907 | + $rootScope.isVisibleResetPass = false; | |
2908 | + //$(".modal-content").load(htmFileUrl).dialog({ modal: true }); | |
2909 | + return false; | |
2910 | + } | |
2911 | + } | |
2824 | 2912 | }] |
2825 | 2913 | ); |
2826 | 2914 | \ No newline at end of file | ... | ... |
400-SOURCECODE/AIAHTML5.Web/app/services/AuthenticationService.js
... | ... | @@ -16,7 +16,51 @@ |
16 | 16 | deferred.reject(status); |
17 | 17 | }); |
18 | 18 | return deferred.promise; |
19 | - } | |
19 | + }, | |
20 | + | |
21 | + GetUserByEmail: function (userInfo, isPassword) { | |
22 | + var deferred = $q.defer(); | |
23 | + | |
24 | + $http.post('/API/api/ForgotUser', userInfo, { //JSON.stringify(userEmail) | |
25 | + headers: { | |
26 | + 'Content-Type': 'application/json' | |
27 | + } | |
28 | + }) | |
29 | + .success(function (data, status, headers, config) { | |
30 | + if (data == "User not found.") | |
31 | + alert("User does not exists."); | |
32 | + else { | |
33 | + if (!userInfo.ispassword) { | |
34 | + alert("UserID sent in mail successfully."); | |
35 | + $('.forgot-sm').fadeOut(); | |
36 | + } | |
37 | + } | |
38 | + console.log('success'); | |
39 | + deferred.resolve(data); | |
40 | + }).error(function (data, status, headers, config) { | |
41 | + console.log('error') | |
42 | + deferred.reject(status); | |
43 | + }); | |
44 | + return deferred.promise; | |
45 | + }, | |
46 | + | |
47 | + UpdateUserPassword: function (userInfo) { | |
48 | + var deferred = $q.defer(); | |
49 | + | |
50 | + $http.post('/API/api/ResetPassword', JSON.stringify(userInfo), { | |
51 | + headers: { | |
52 | + 'Content-Type': 'application/json' | |
53 | + } | |
54 | + }) | |
55 | + .success(function (data, status, headers, config) { | |
56 | + console.log('success') | |
57 | + deferred.resolve(data); | |
58 | + }).error(function (data, status, headers, config) { | |
59 | + console.log('error') | |
60 | + deferred.reject(status); | |
61 | + }); | |
62 | + return deferred.promise; | |
63 | + }, | |
20 | 64 | |
21 | 65 | } |
22 | 66 | }); |
23 | 67 | \ No newline at end of file | ... | ... |
400-SOURCECODE/AIAHTML5.Web/app/views/Home/resetPassword.html
0 → 100644
1 | +<!doctype html> | |
2 | +<html> | |
3 | +<head> | |
4 | +<meta charset="utf-8"> | |
5 | +<title>AIA</title> | |
6 | +<style type="text/css"> | |
7 | +h1 { | |
8 | + font-size: 16px; | |
9 | + color: #FFFFFF; | |
10 | +} | |
11 | +</style> | |
12 | +</head> | |
13 | + | |
14 | +<body> | |
15 | +<table width="500" border="0" align="center" cellpadding="0" cellspacing="0"> | |
16 | + <tbody> | |
17 | + <tr> | |
18 | + <td align="center" valign="middle" bgcolor="#393939 " style="padding:30px 0 20px 0;"><a href="#"><img src="/content/images/common/logo.png" alt="PPL" title="PPL" /></a></td> | |
19 | + </tr> | |
20 | + <tr> | |
21 | + <td align="center" valign="top" bgcolor="#808d43" style="padding:20px; overflow:hidden;"> | |
22 | + <table width="100%" border="0" cellspacing="0" cellpadding="0" id='resetPwdform' ng-show="isVisibleResetPass" ng-init="CallResetPassword()"> | |
23 | + <tbody> | |
24 | + | |
25 | + <tr> | |
26 | + <td style=" font-size:26px; font-weight:bold; color:#fff; font-family:Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif"><strong>Reset Password</strong></td> | |
27 | + </tr> | |
28 | + <tr> | |
29 | + <td> </td> | |
30 | + </tr> | |
31 | + <tr> | |
32 | + <td style="font-family:Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; color:#fff;">New Password </td> | |
33 | + </tr> | |
34 | + <tr> | |
35 | + <td><input class="form-control" id="" value="*****" ng-model="password" type="password" style="padding:3px 5px; height:25px; width:98%;"></td> | |
36 | + </tr> | |
37 | + <tr> | |
38 | + <td> </td> | |
39 | + </tr> | |
40 | + <tr> | |
41 | + <td style="font-family:Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; color:#fff;">Confirm Password </td> | |
42 | + </tr> | |
43 | + | |
44 | + <tr> | |
45 | + <td><input class="form-control" id="" value="*****" ng-model="password2" type="password" style="padding:3px 5px; height:25px; width:98%;"></td> | |
46 | + </tr> | |
47 | + <tr> | |
48 | + <td> </td> | |
49 | + </tr> | |
50 | + <tr> | |
51 | + <td> | |
52 | + <button type="button" style="color:#423030; background:#ff9900; border:1px solid #ff9900; cursor:pointer; color:#fff; padding:5px 10px; font-size:16px; text-transform:uppercase; text-align:center; text-decoration:none; font-family:Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif" ng-click="CallResetPassword">Submit</button> | |
53 | + <button type="button" style="color:#423030; background:#231f20; border:1px solid #231f20; cursor:pointer; color:#fff; padding:5px 10px; font-size:16px; text-transform:uppercase; text-align:center; text-decoration:none; font-family:Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif">Close</button> | |
54 | + </td> | |
55 | + </tr> | |
56 | + </tbody> | |
57 | +</table> | |
58 | + </tr> | |
59 | + | |
60 | + | |
61 | + </tbody> | |
62 | +</table> | |
63 | +</body> | |
64 | +</html> | ... | ... |
400-SOURCECODE/AIAHTML5.Web/app/views/Home/resetPwd.html
0 → 100644
1 | +<div id='dvResetPass'> | |
2 | + <!--<form name='form'> | |
3 | + <input data-ng-model='user.password' type="password" name='password' placeholder='password' required> | |
4 | + <div ng-show="form.password.$error.required"> | |
5 | + Field required | |
6 | + </div> | |
7 | + <input ng-model='user.password_verify' type="password" name='confirm_password' placeholder='confirm password' required data-password-verify="user.password"> | |
8 | + <div ng-show="form.confirm_password.$error.required"> | |
9 | + Field required! | |
10 | + </div> | |
11 | + <div ng-show="form.confirm_password.$error.passwordVerify"> | |
12 | + Fields are not equal! | |
13 | + </div> | |
14 | + <button type="button" class="btn btn-primary btn-block" ng-click="">Submit</button> | |
15 | + </form>--> | |
16 | + <!--<div id='resetPwdform' ng-show="isVisibleResetPass" ng-init="CallResetPassword()"> | |
17 | + <div class="modal fade" tabindex="-1" role="dialog" id="reset"> | |
18 | + <div class="modal-dialog" role="document"> | |
19 | + <div class="modal-content"> | |
20 | + <div class="modal-header">--> | |
21 | + <!--<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>--> | |
22 | + <!--<h4 class="modal-title">Reset Password</h4> | |
23 | + </div> | |
24 | + <div class="modal-body"> | |
25 | + <form id="resetPass" class="form-horizontal pad20"> | |
26 | + <div class="form-group"> | |
27 | + <label for="Newpass">New Password</label> | |
28 | + <input class="form-control" id="pass" placeholder="*****" type="email" ng-model="password" required ng-show="restPasss.email.$error.required"> | |
29 | + </div> | |
30 | + | |
31 | + <div class="form-group"> | |
32 | + <label for="confom">Confirm Password</label> | |
33 | + <input class="form-control" id="retypePass" placeholder="*****" type="email" ng-model="password2" required ng-show="restpasss.email.$error.required"> | |
34 | + </div> | |
35 | + </form> | |
36 | + </div> | |
37 | + <div class="modal-footer"> | |
38 | + <button type="button" class="btn btn-info" ng-click="SaveData()" onclick="SaveData()">Submit</button> | |
39 | + <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button> | |
40 | + </div> | |
41 | + </div> | |
42 | + </div> | |
43 | + </div> | |
44 | + </div> | |
45 | +</div>--> | |
46 | + | |
47 | +<!-- Modal --> | |
48 | + | |
49 | + <!--<div class="modal-header"> | |
50 | + <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> | |
51 | + <h4 class="modal-title" id="myModalLabel">Reset Password</h4> | |
52 | + </div>--> | |
53 | + <div class="modal-body"> | |
54 | + <div class="col-sm-12"> | |
55 | + <form class="form-horizontal pad20"> | |
56 | + <div class="form-group"> | |
57 | + <label for="Newpass">New Password</label> | |
58 | + <input class="form-control" id="newPass" placeholder="*****" type="password" ng-model="userInfo.newpass"> | |
59 | + </div> | |
60 | + | |
61 | + <div class="form-group"> | |
62 | + <label for="confom">Confirm Password</label> | |
63 | + <input class="form-control" id="confirmPass" placeholder="*****" type="password" ng-model="userInfo.newpass2"> | |
64 | + </div> | |
65 | + </form> | |
66 | + </div> | |
67 | + </div> | |
68 | + <div class="modal-footer"> | |
69 | + | |
70 | + <button type="button" class="btn btn-info" ng-click="UpdateUserPassword(userInfo)">Submit</button> | |
71 | + <!--<button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>--> | |
72 | + | |
73 | + | |
74 | + <!--<div class="col-xs-12 resetPanel"> | |
75 | + <div class="loginBox clearfix"> | |
76 | + <div class="col-xs-12"> | |
77 | + <form class="ng-pristine ng-valid"> | |
78 | + <div class="form-group"> | |
79 | + <div class="input-group"> | |
80 | + <span class="input-group-addon"><i class="fa fa-user"></i></span> | |
81 | + <input type="text" class="form-control ng-pristine ng-valid ng-touched" placeholder="Username" ng-model="userInfo.username"> | |
82 | + </div> | |
83 | + </div> | |
84 | + <div class="form-group"> | |
85 | + <div class="input-group"> | |
86 | + <span class="input-group-addon"><i class="fa fa-key"></i></span> | |
87 | + <input type="password" class="form-control ng-pristine ng-valid ng-touched" placeholder="Password" ng-model="userInfo.password"> | |
88 | + </div> | |
89 | + </div> | |
90 | + <div class="form-group"> | |
91 | + <button class="btn btn-primary pull-right" ng-click="UpdateUserPassword(userInfo)">Submit</button> | |
92 | + </div> | |
93 | + </form> | |
94 | + </div> | |
95 | + </div> | |
96 | + </div>--> | |
97 | + </div> | |
98 | + </div> | |
99 | + | |
100 | + | ... | ... |
400-SOURCECODE/AIAHTML5.Web/content/images/logo.png
0 → 100644
11.5 KB
400-SOURCECODE/AIAHTML5.Web/index.html
... | ... | @@ -9,16 +9,9 @@ |
9 | 9 | <!--<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">--> |
10 | 10 | <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0 maximum-scale=1.0" /> |
11 | 11 | <title>A.D.A.M. Interactive Anatomy</title> |
12 | - | |
13 | 12 | <link href="themes/default/css/bootstrap/3.3.6/bootstrap.css" rel="stylesheet" /> |
14 | - | |
15 | - | |
16 | - | |
17 | - | |
18 | 13 | <link href="themes/default/css/bootstrap/3.3.6/main.css" rel="stylesheet" /> |
19 | - | |
20 | 14 | <link href="themes/default/css/bootstrap/3.3.6/secondeffect.css" rel="stylesheet" /> |
21 | - | |
22 | 15 | <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css"> |
23 | 16 | <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:400,800,700,600,400italic"> |
24 | 17 | |
... | ... | @@ -30,9 +23,7 @@ |
30 | 23 | <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
31 | 24 | <![endif]--> |
32 | 25 | <link href="themes/default/css/bootstrap/3.3.6/jquery.mCustomScrollbar.css" rel="stylesheet" /> |
33 | - | |
34 | 26 | <link href="themes/default/css/bootstrap/3.3.6/jquery-ui.css" rel="stylesheet" /> |
35 | - | |
36 | 27 | <link href="libs/jquery/jquery_plugin/jsPanel/jspanel/jquery.jspanel.css" rel="stylesheet" /> |
37 | 28 | <link href="libs/video_4_12_11/css/video-js_4_12_11.css" rel="stylesheet" /> |
38 | 29 | <link href="libs/jquery/jquery_plugin/SpeechBubble/css/bubble.css" rel="stylesheet" /> |
... | ... | @@ -52,7 +43,6 @@ |
52 | 43 | color: #fff !important; |
53 | 44 | } |
54 | 45 | |
55 | - | |
56 | 46 | .ActiveFormattingButtonClass { |
57 | 47 | background-color: #1B92D0 !important; |
58 | 48 | } |
... | ... | @@ -63,7 +53,6 @@ |
63 | 53 | cursor: pointer; |
64 | 54 | margin-right: 2px; |
65 | 55 | } |
66 | - | |
67 | 56 | /*.italic-btn-css { |
68 | 57 | background: #4B4B4B; |
69 | 58 | padding: 4px; |
... | ... | @@ -78,8 +67,6 @@ |
78 | 67 | margin-right: 5px; |
79 | 68 | } |
80 | 69 | |
81 | - | |
82 | - | |
83 | 70 | .activebtncolor { |
84 | 71 | background-color: #1B92D0 !important; |
85 | 72 | border-color: #1B92D0 !important; |
... | ... | @@ -91,7 +78,6 @@ |
91 | 78 | border-color: #3f3f3f; |
92 | 79 | color: #ffffff; |
93 | 80 | } |
94 | - | |
95 | 81 | /*.btn-black-annotation:hover { |
96 | 82 | background-color: #1B92D0 !important; |
97 | 83 | border-color: #1B92D0 !important; |
... | ... | @@ -115,7 +101,6 @@ |
115 | 101 | color: #000; |
116 | 102 | border-radius: 0; |
117 | 103 | } |
118 | - | |
119 | 104 | /*7931*/ |
120 | 105 | .custom-tooltip-annotation-edit { |
121 | 106 | background-color: #fff; |
... | ... | @@ -149,258 +134,266 @@ |
149 | 134 | color: #000; |
150 | 135 | border-radius: 0; |
151 | 136 | } |
137 | + | |
152 | 138 | .restrict-carret-icon { |
153 | 139 | font-size: 18px; |
154 | 140 | position: relative; |
155 | 141 | top: 1px; |
156 | 142 | } |
157 | - </style> | |
158 | - | |
159 | - | |
160 | - | |
143 | + </style> | |
161 | 144 | </head> |
162 | 145 | <body ng-controller="HomeController" id="bo" ng-init="initializeAIA()"> |
163 | - <div id="login" ng-show="isVisibleLogin"> | |
164 | - | |
165 | - <div class="container-fluid loginBg"> | |
166 | - <div class="row"> | |
167 | - <div class="col-xs-12 text-center"> | |
168 | - <a href="index.html" class="loginLogo"><img src="content/images/common/logo-large.png" class="img-responsive" alt=""></a> | |
169 | - <div class="headerBand row"> | |
170 | - <div class="col-xs-12"> | |
171 | - <h1>A.D.A.M. Interactive Anatomy</h1> | |
172 | - <p>The most compresive online interactive anatomy learning resource</p> | |
146 | + <div ng-hide="isVisibleResetPass"> | |
147 | + <div id="login" ng-show="isVisibleLogin"> | |
148 | + <div class="container-fluid loginBg"> | |
149 | + <div class="row"> | |
150 | + <div class="col-xs-12 text-center"> | |
151 | + <a href="index.html" class="loginLogo"><img src="content/images/common/logo-large.png" class="img-responsive" alt=""></a> | |
152 | + <div class="headerBand row"> | |
153 | + <div class="col-xs-12"> | |
154 | + <h1>A.D.A.M. Interactive Anatomy</h1> | |
155 | + <p>The most compresive online interactive anatomy learning resource</p> | |
156 | + </div> | |
173 | 157 | </div> |
174 | 158 | </div> |
175 | - </div> | |
176 | - <!--LOGIN PANEL--> | |
177 | - <div class="col-xs-12 loginPanel"> | |
178 | - <div class="loginBox clearfix"> | |
179 | - <div class="col-xs-12"> | |
180 | - <!--<strong>Login</strong>--> | |
181 | - <form> | |
182 | - <div class="form-group"> | |
183 | - <!--<label for="">User ID</label>--> | |
184 | - <!--input type="email" class="form-control" placeholder="User ID"> | |
185 | - <span class="help-block text-right small"><a href="#" class="color-white">Forgot User ID?</a></span>--> | |
186 | - | |
159 | + <!--LOGIN PANEL--> | |
160 | + <div class="col-xs-12 loginPanel"> | |
161 | + <div class="loginBox clearfix"> | |
162 | + <div class="col-xs-12"> | |
163 | + <!--<strong>Login</strong>--> | |
164 | + <form> | |
165 | + <div class="form-group"> | |
166 | + <!--<label for="">User ID</label>--> | |
167 | + <!--input type="email" class="form-control" placeholder="User ID"> | |
168 | + <span class="help-block text-right small"><a href="#" class="color-white">Forgot User ID?</a></span>--> | |
187 | 169 | |
188 | - <div class="input-group"> | |
189 | - <span class="input-group-addon"><i class="fa fa-user"></i></span> | |
190 | - <input type="text" class="form-control" placeholder="Username" ng-model="userInfo.username"> | |
170 | + <div class="input-group"> | |
171 | + <span class="input-group-addon"><i class="fa fa-user"></i></span> | |
172 | + <input type="text" class="form-control" placeholder="Username" ng-model="userInfo.username"> | |
173 | + </div> | |
174 | + <span class="help-block text-right small"><a href="#" class="color-white" id="forgotUserIdAnchor" data-toggle="modal" data-target=".forgot-sm">Forgot User ID?</a></span> | |
191 | 175 | </div> |
192 | - <span class="help-block text-right small"><a href="#" class="color-white">Forgot User ID?</a></span> | |
193 | - | |
194 | - | |
195 | - </div> | |
196 | - <div class="form-group"> | |
197 | - <!--<label for="">Password</label>--> | |
198 | - <!--<input type="password" class="form-control" placeholder="Password"> | |
199 | - <span class="help-block text-right small "><a href="#" class="color-white">Forgot Password?</a></span>--> | |
200 | - <div class="input-group"> | |
201 | - <span class="input-group-addon"><i class="fa fa-key"></i></span> | |
202 | - <input type="password" class="form-control" placeholder="Password" ng-model="userInfo.password"> | |
176 | + <div class="form-group"> | |
177 | + <!--<label for="">Password</label>--> | |
178 | + <!--<input type="password" class="form-control" placeholder="Password"> | |
179 | + <span class="help-block text-right small "><a href="#" class="color-white">Forgot Password?</a></span>--> | |
180 | + <div class="input-group"> | |
181 | + <span class="input-group-addon"><i class="fa fa-key"></i></span> | |
182 | + <input type="password" class="form-control" placeholder="Password" ng-model="userInfo.password"> | |
183 | + </div> | |
184 | + <span class="help-block text-right small "><a class="color-white" id="forgotPasswordAnchor" data-toggle="modal" data-target=".forgot-sm1">Forgot Password?</a></span> <!--#resetpass" href="/app/views/Home/resetPwd.html"--> | |
203 | 185 | </div> |
204 | - <span class="help-block text-right small "><a href="#" class="color-white">Forgot Password?</a></span> | |
205 | - </div> | |
206 | - <div class="form-group"> | |
207 | - <button class="btn btn-primary pull-right" ng-click="AuthenticateUser(userInfo)">Log In</button> | |
208 | - </div> | |
209 | - </form> | |
186 | + <div class="form-group"> | |
187 | + <button class="btn btn-primary pull-right" ng-click="AuthenticateUser(userInfo)">Log In</button> | |
188 | + </div> | |
189 | + </form> | |
190 | + </div> | |
210 | 191 | </div> |
211 | - </div> | |
212 | - <div class="loginExBtn"> | |
213 | - <a href="#" class="btn btn-primary">Subscribe Now</a> | |
214 | - <a href="#" class="btn btn-primary pull-right">Learn More</a> | |
192 | + <div class="loginExBtn"> <a href="#" class="btn btn-primary">Subscribe Now</a> <a href="#" class="btn btn-primary pull-right">Learn More</a> </div> | |
215 | 193 | </div> |
216 | 194 | </div> |
217 | 195 | </div> |
218 | - </div> | |
219 | - | |
220 | - <!-- Footer --> | |
221 | - <footer class="dark"> | |
222 | - <div class="container-fluid text-center">Copyright © 2016 Ebix Inc. All rights reserved.</div> | |
223 | - </footer> | |
224 | 196 | |
225 | - </div> | |
226 | - <div id="index" ng-hide="isVisibleLogin"> | |
227 | - <div class="container-fluid "> | |
228 | - <!--Header--> | |
229 | - | |
230 | - <nav class="navbar navbar-inverse navbar-fixed-top"> | |
231 | - <div class="container-fluid"> | |
232 | - <!-- Brand and toggle get grouped for better mobile display --> | |
233 | - <div class="navbar-header"> | |
234 | - <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#topFixedNavbar1" aria-expanded="false"> | |
235 | - <span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span> | |
236 | - </button> | |
237 | - <a class="frameLogo navbar-brand" href="home"><img src="content/images/logo-main.png" class="img-responsive" alt=""></a> | |
197 | + <!-- Footer --> | |
198 | + <footer class="dark"> | |
199 | + <div class="container-fluid text-center">Copyright © 2016 Ebix Inc. All rights reserved.</div> | |
200 | + </footer> | |
201 | + </div> | |
202 | + <!-- Forgot User ID (Small modal) --> | |
203 | + <div class="modal fade forgot-sm" role="dialog" tabindex="-1" aria-labelledby="exampleModalLabel" data-target=".forgot-sm"> | |
204 | + <div class="modal-dialog modal-sm" role="document"> | |
205 | + <div class="modal-content"> | |
206 | + <div class="modal-header"> | |
207 | + <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> | |
208 | + <h5 class="modal-title" id="exampleModalLabel">Enter your email id to recover User id</h5> | |
209 | + </div> | |
210 | + <div class="modal-body"> | |
211 | + <form> | |
212 | + <div class="form-group"> | |
213 | + <div class="input-group"> | |
214 | + <span class="input-group-addon"><i class="fa fa-envelope"></i></span> | |
215 | + <input id="btnEmail" class="form-control" placeholder="Email" type="email" ng-model="userInfo.emailId"> | |
216 | + </div> | |
217 | + </div> | |
218 | + </form> | |
219 | + </div> | |
220 | + <div class="modal-footer"> | |
221 | + <button type="button" class="btn btn-primary btn-block" ng-click="GetUserByEmail(userInfo, 'false')">Send Mail</button> | |
238 | 222 | </div> |
239 | - <div ng-include="'app/widget/TopMenu.html'"></div> | |
240 | - </div> | |
241 | - </nav> | |
242 | - <div class="bodyWrap row container-fluid"> | |
243 | - | |
244 | - <div id="spinner" class="spinner" ng-show="isLoading" style="visibility:hidden"> | |
245 | - <img id="img-spinner" src="content/images/common/loading.gif" alt="Loading" /> | |
246 | 223 | </div> |
247 | - <div ng-view></div> | |
248 | - | |
249 | 224 | </div> |
250 | - </div>> | |
251 | - | |
252 | - | |
253 | - <!--list manager Modal--> | |
254 | - <div class="modal fade" id="ShowListManager" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" ng-init="tab = 1" style="width:27%;left:50%;overflow:hidden;height:500px;top:100px"> | |
255 | - <div class="modal-dialog" role="document" style="width:400px;"> | |
256 | - <div class="modal-content" style="width:100%;max-width:400px;"> | |
257 | - <div class="modal-header setting-modal-header" style="padding: 5px 10px; border-bottom: 1px solid #e5e5e5;"> | |
258 | - <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> | |
259 | - <h4 class="modal-title" id="myModalLabel">Setting</h4> | |
225 | + </div> | |
226 | + <div id="light-box" style="display: none"></div> | |
227 | + <!-- Forgot Password (Small modal) --> | |
228 | + <div class="modal fade forgot-sm1" role="dialog" tabindex="-1" aria-labelledby="exampleModalLabel" data-target=".forgot-sm1"> | |
229 | + <div class="modal-dialog modal-sm" role="document"> | |
230 | + <div class="modal-content"> | |
231 | + <div class="modal-header"> | |
232 | + <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> | |
233 | + <h5 class="modal-title" id="exampleModalLabel">Enter your email id to recover Password</h5> | |
260 | 234 | </div> |
261 | 235 | <div class="modal-body"> |
262 | - <div class="row" style="padding-top:20px;"> | |
263 | - <div class="col-sm-12"> | |
264 | - | |
265 | - <div aria-label="..." role="group" class="btn-group btn-group-justified"> | |
266 | - <div role="group" class="btn-group"> | |
267 | - <button class="btn btn-sm btn-success" type="button" ng-click="tab = 1">Appearance</button> | |
268 | - </div> | |
269 | - <div role="group" class="btn-group"> | |
270 | - <button class="btn btn-sm btn-success" type="button" ng-click="tab = 2">Lexicons</button> | |
271 | - </div> | |
272 | - <div role="group" class="btn-group"> | |
273 | - <button class="btn btn-sm btn-success" type="button" ng-click="tab = 3">Dissectible</button> | |
274 | - </div> | |
236 | + <form> | |
237 | + <div class="form-group"> | |
238 | + <div class="input-group"> | |
239 | + <span class="input-group-addon"><i class="fa fa-envelope"></i></span> | |
240 | + <input id="btnEmail2" class="form-control" placeholder="Email" type="email" ng-model="userInfo.emailId"> | |
275 | 241 | </div> |
276 | - | |
277 | 242 | </div> |
278 | - | |
279 | - | |
280 | - <div class="col-sm-12" ng-show="tab === 1"> | |
281 | - | |
282 | - | |
283 | - <div class="row"> | |
284 | - <div class="center-block col-md-11" style="float: none; background-color:#E2E2E2;height:300px;"> | |
285 | - <div class="row" style="padding-top: 22px;"> | |
286 | - <div class="center-block col-md-10" style="float: none; "> | |
287 | - <h5><strong>System Font</strong></h5> | |
288 | - | |
289 | - <div style="border:2px solid #ACACAC;float:left;padding:15px;background-color:#CCCCCC;"> | |
290 | - <div class="col-md-3" style="padding-left:0px;"> | |
291 | - Sample | |
292 | - </div> | |
293 | - <div class="col-md-6" style="padding-right:0px;"> | |
294 | - <input type="text" value="" style="width:85%;"> | |
295 | - </div> | |
296 | - <div class="col-md-3" style="padding-left:0px;"> | |
297 | - <button class="btn btn-primary" style="margin-bottom:5px;">Change</button> | |
298 | - <button class="btn btn-primary" style="margin-bottom:5px;">Default</button> | |
299 | - </div> | |
300 | - | |
301 | - </div> | |
302 | - </div> | |
243 | + </form> | |
244 | + </div> | |
245 | + <div class="modal-footer"> | |
246 | + <button type="button" class="btn btn-primary btn-block" ng-click="GetUserByEmail(userInfo, 'true')">Send Mail</button> | |
247 | + </div> | |
248 | + </div> | |
249 | + </div> | |
250 | + </div> | |
251 | + <div id="index" ng-hide="isVisibleLogin"> | |
252 | + <div class="container-fluid "> | |
253 | + <!--Header--> | |
254 | + | |
255 | + <nav class="navbar navbar-inverse navbar-fixed-top"> | |
256 | + <div class="container-fluid"> | |
257 | + <!-- Brand and toggle get grouped for better mobile display --> | |
258 | + <div class="navbar-header"> | |
259 | + <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#topFixedNavbar1" aria-expanded="false"> <span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span> </button> | |
260 | + <a class="frameLogo navbar-brand" href="home"><img src="content/images/logo-main.png" class="img-responsive" alt=""></a> | |
261 | + </div> | |
262 | + <div ng-include="'app/widget/TopMenu.html'"></div> | |
263 | + </div> | |
264 | + </nav> | |
265 | + <div class="bodyWrap row container-fluid"> | |
266 | + <div id="spinner" class="spinner" ng-show="isLoading" style="visibility:hidden"> <img id="img-spinner" src="content/images/common/loading.gif" alt="Loading" /> </div> | |
267 | + <div ng-view></div> | |
268 | + </div> | |
269 | + </div> | |
270 | + | |
271 | + | |
272 | + <!--list manager Modal--> | |
273 | + <div class="modal fade" id="ShowListManager" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" ng-init="tab = 1" style="width:27%;left:50%;overflow:hidden;height:500px;top:100px"> | |
274 | + <div class="modal-dialog" role="document" style="width:400px;"> | |
275 | + <div class="modal-content" style="width:100%;max-width:400px;"> | |
276 | + <div class="modal-header setting-modal-header" style="padding: 5px 10px; border-bottom: 1px solid #e5e5e5;"> | |
277 | + <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> | |
278 | + <h4 class="modal-title" id="myModalLabel">Setting</h4> | |
279 | + </div> | |
280 | + <div class="modal-body"> | |
281 | + <div class="row" style="padding-top:20px;"> | |
282 | + <div class="col-sm-12"> | |
283 | + <div aria-label="..." role="group" class="btn-group btn-group-justified"> | |
284 | + <div role="group" class="btn-group"> | |
285 | + <button class="btn btn-sm btn-success" type="button" ng-click="tab = 1">Appearance</button> | |
303 | 286 | </div> |
304 | - | |
305 | - </div> | |
306 | - </div> | |
307 | - | |
308 | - </div> | |
309 | - <div class="col-sm-12" ng-show="tab === 2"> | |
310 | - | |
311 | - | |
312 | - <div class="row"> | |
313 | - <div class="center-block col-md-11" style="float: none; background-color:#E2E2E2;height:300px;"> | |
314 | - <div class="col-md-6"> | |
315 | - <h6><strong>Primary Lexicon</strong></h6> | |
316 | - <input type="text" value="English" style="width:90%;"> | |
317 | - <button class="btn btn-primary" style="float:right;margin-bottom:5px;margin-top:5px;">Change</button> | |
318 | - <h6>Secondry Lexicon</h6> | |
319 | - <textarea style="width:90%;"></textarea> | |
320 | - <button>Change</button> | |
321 | - <button>Change</button> | |
287 | + <div role="group" class="btn-group"> | |
288 | + <button class="btn btn-sm btn-success" type="button" ng-click="tab = 2">Lexicons</button> | |
322 | 289 | </div> |
323 | - <div class="col-md-6"> | |
324 | - <h6>Available Lexicon</h6> | |
325 | - <select multiple class="form-control" id="sel2"> | |
326 | - <option>1</option> | |
327 | - <option>2</option> | |
328 | - <option>3</option> | |
329 | - <option>4</option> | |
330 | - <option>5</option> | |
331 | - </select> | |
332 | - | |
333 | - <p>Note: Some languages require special system fonts to display correctly</p> | |
290 | + <div role="group" class="btn-group"> | |
291 | + <button class="btn btn-sm btn-success" type="button" ng-click="tab = 3">Dissectible</button> | |
334 | 292 | </div> |
335 | - | |
336 | 293 | </div> |
337 | 294 | </div> |
338 | - | |
339 | - </div> | |
340 | - <div class="col-sm-12" ng-show="tab === 3"> | |
341 | - | |
342 | - <div class="row"> | |
343 | - <div class="center-block col-md-11" style="float: none; background-color:#E2E2E2;height:300px;"> | |
344 | - <h6>Skin Tones</h6> | |
345 | - <div class="center-block col-md-8" style="float: none;"> | |
346 | - <div class="col-md-6"> | |
347 | - <img class="img-responsive" alt="" src="http://placehold.it/400x300"> | |
348 | - </div> | |
349 | - <div class="col-md-6"> | |
350 | - <img class="img-responsive" alt="" src="http://placehold.it/400x300"> | |
295 | + <div class="col-sm-12" ng-show="tab === 1"> | |
296 | + <div class="row"> | |
297 | + <div class="center-block col-md-11" style="float: none; background-color:#E2E2E2;height:300px;"> | |
298 | + <div class="row" style="padding-top: 22px;"> | |
299 | + <div class="center-block col-md-10" style="float: none; "> | |
300 | + <h5><strong>System Font</strong></h5> | |
301 | + <div style="border:2px solid #ACACAC;float:left;padding:15px;background-color:#CCCCCC;"> | |
302 | + <div class="col-md-3" style="padding-left:0px;"> Sample </div> | |
303 | + <div class="col-md-6" style="padding-right:0px;"> | |
304 | + <input type="text" value="" style="width:85%;"> | |
305 | + </div> | |
306 | + <div class="col-md-3" style="padding-left:0px;"> | |
307 | + <button class="btn btn-primary" style="margin-bottom:5px;">Change</button> | |
308 | + <button class="btn btn-primary" style="margin-bottom:5px;">Default</button> | |
309 | + </div> | |
310 | + </div> | |
311 | + </div> | |
351 | 312 | </div> |
313 | + </div> | |
314 | + </div> | |
315 | + </div> | |
316 | + <div class="col-sm-12" ng-show="tab === 2"> | |
317 | + <div class="row"> | |
318 | + <div class="center-block col-md-11" style="float: none; background-color:#E2E2E2;height:300px;"> | |
352 | 319 | <div class="col-md-6"> |
353 | - <img class="img-responsive" alt="" src="http://placehold.it/400x300"> | |
320 | + <h6><strong>Primary Lexicon</strong></h6> | |
321 | + <input type="text" value="English" style="width:90%;"> | |
322 | + <button class="btn btn-primary" style="float:right;margin-bottom:5px;margin-top:5px;">Change</button> | |
323 | + <h6>Secondry Lexicon</h6> | |
324 | + <textarea style="width:90%;"></textarea> | |
325 | + <button>Change</button> | |
326 | + <button>Change</button> | |
354 | 327 | </div> |
355 | 328 | <div class="col-md-6"> |
356 | - <img class="img-responsive" alt="" src="http://placehold.it/400x300"> | |
329 | + <h6>Available Lexicon</h6> | |
330 | + <select multiple class="form-control" id="sel2"> | |
331 | + <option>1</option> | |
332 | + <option>2</option> | |
333 | + <option>3</option> | |
334 | + <option>4</option> | |
335 | + <option>5</option> | |
336 | + </select> | |
337 | + <p>Note: Some languages require special system fonts to display correctly</p> | |
357 | 338 | </div> |
358 | - | |
359 | 339 | </div> |
360 | - <h6>Modesty Setting</h6> | |
361 | - <div class="col-md-6"> | |
362 | - <div class="col-md-4"> | |
363 | - <img class="img-responsive" alt="" src="http://placehold.it/400x300"> | |
340 | + </div> | |
341 | + </div> | |
342 | + <div class="col-sm-12" ng-show="tab === 3"> | |
343 | + <div class="row"> | |
344 | + <div class="center-block col-md-11" style="float: none; background-color:#E2E2E2;height:300px;"> | |
345 | + <h6>Skin Tones</h6> | |
346 | + <div class="center-block col-md-8" style="float: none;"> | |
347 | + <div class="col-md-6"> <img class="img-responsive" alt="" src="http://placehold.it/400x300"> </div> | |
348 | + <div class="col-md-6"> <img class="img-responsive" alt="" src="http://placehold.it/400x300"> </div> | |
349 | + <div class="col-md-6"> <img class="img-responsive" alt="" src="http://placehold.it/400x300"> </div> | |
350 | + <div class="col-md-6"> <img class="img-responsive" alt="" src="http://placehold.it/400x300"> </div> | |
364 | 351 | </div> |
365 | - <div class="col-md-8"> | |
366 | - | |
367 | - <div class="radio"> | |
368 | - <label><input type="radio" name="optradio" checked>On</label> | |
369 | - </div> | |
370 | - <div class="radio"> | |
371 | - <label><input type="radio" name="optradio">Off</label> | |
352 | + <h6>Modesty Setting</h6> | |
353 | + <div class="col-md-6"> | |
354 | + <div class="col-md-4"> <img class="img-responsive" alt="" src="http://placehold.it/400x300"> </div> | |
355 | + <div class="col-md-8"> | |
356 | + <div class="radio"> | |
357 | + <label> | |
358 | + <input type="radio" name="optradio" checked> | |
359 | + On | |
360 | + </label> | |
361 | + </div> | |
362 | + <div class="radio"> | |
363 | + <label> | |
364 | + <input type="radio" name="optradio"> | |
365 | + Off | |
366 | + </label> | |
367 | + </div> | |
372 | 368 | </div> |
373 | - | |
374 | 369 | </div> |
375 | - </div> | |
376 | - <div class="col-md-6"> | |
377 | - <h6>Annotaion</h6> | |
378 | - <div class="checkbox"> | |
379 | - <label><input type="checkbox" value="" checked>Erase Annotations when changeing layers</label> | |
370 | + <div class="col-md-6"> | |
371 | + <h6>Annotaion</h6> | |
372 | + <div class="checkbox"> | |
373 | + <label> | |
374 | + <input type="checkbox" value="" checked> | |
375 | + Erase Annotations when changeing layers | |
376 | + </label> | |
377 | + </div> | |
380 | 378 | </div> |
381 | 379 | </div> |
382 | 380 | </div> |
383 | - | |
384 | 381 | </div> |
385 | - | |
386 | - | |
387 | - | |
388 | 382 | </div> |
389 | - </div> | |
390 | - <div class="modal-footer"> | |
391 | - <button type="button" class="btn btn-primary">Ok</button> | |
392 | - <button type="button" class="btn btn-primary" data-dismiss="modal">Cancle</button> | |
393 | - <button type="button" class="btn btn-primary">Apply</button> | |
383 | + <div class="modal-footer"> | |
384 | + <button type="button" class="btn btn-primary">Ok</button> | |
385 | + <button type="button" class="btn btn-primary" data-dismiss="modal">Cancle</button> | |
386 | + <button type="button" class="btn btn-primary">Apply</button> | |
387 | + </div> | |
394 | 388 | </div> |
395 | 389 | </div> |
396 | 390 | </div> |
397 | 391 | </div> |
398 | - </div> | |
399 | 392 | |
400 | - <!--Settings modal--> | |
401 | - <!--<div id="modal-settings" style="z-index: 1000000000; background: white;width: 302px;position:absolute;left:40%;right:0;top:70px;">--> | |
402 | - <div id="modelsettingsbackground" style="background-color: black; bottom: 0; display: none; height: 100%; left: 0; opacity: 0.5; position: fixed; right: 0; top: 0; width: 100%; z-index: 12000000;"></div> | |
403 | - <div id="modal-settings" style="display:none;z-index: 1000000000;height:auto;width: 300px;position:absolute;left:40%;right:0;top:70px;"> | |
393 | + <!--Settings modal--> | |
394 | + <!--<div id="modal-settings" style="z-index: 1000000000; background: white;width: 302px;position:absolute;left:40%;right:0;top:70px;">--> | |
395 | + <div id="modelsettingsbackground" style="background-color: black; bottom: 0; display: none; height: 100%; left: 0; opacity: 0.5; position: fixed; right: 0; top: 0; width: 100%; z-index: 12000000;"></div> | |
396 | + <div id="modal-settings" style="display:none;z-index: 1000000000;height:auto;width: 300px;position:absolute;left:40%;right:0;top:70px;"> | |
404 | 397 | <div role="document"> |
405 | 398 | <form> |
406 | 399 | <div ng-init="loadsettings()" class="modal-content" id="setting-modal-dark"> |
... | ... | @@ -415,7 +408,6 @@ |
415 | 408 | <li role="presentation" ng-class="{'active':SettingsTab==1}"><a role="tab" class="padd5" ng-click="SetSettingActiveTab(1)">Appearance</a></li> |
416 | 409 | <li role="presentation" ng-class="{'active':SettingsTab==2}"><a role="tab" class="padd5" ng-click="SetSettingActiveTab(2)">Lexicons</a></li> |
417 | 410 | <li role="presentation" ng-class="{'active':SettingsTab==3}"><a role="tab" class="padd5" ng-click="SetSettingActiveTab(3)">Dissectible</a></li> |
418 | - | |
419 | 411 | </ul> |
420 | 412 | <!-- Tab panes --> |
421 | 413 | <div class="tab-content"> |
... | ... | @@ -442,7 +434,6 @@ |
442 | 434 | <input type="text" class="form-control" value="English" disabled> |
443 | 435 | <button class="btn btn-sm btn-success btn-block marginTop5">Change</button> |
444 | 436 | </div> |
445 | - | |
446 | 437 | <div class="form-group"> |
447 | 438 | <label for="SystemFont" class="font13">Secondary Lexicon</label> |
448 | 439 | <textarea class="form-control" rows="3"></textarea> |
... | ... | @@ -480,28 +471,19 @@ |
480 | 471 | <div class="skin-tones"> |
481 | 472 | <div align="center"> |
482 | 473 | <div class="col-sm-5"> |
483 | - <button id="btnEthnicW" class="thumbnail skinmarginbtm6" ng-model="formsetting.ethnicity" ng-click="ChangeEthnicity(formsetting,'W')"> | |
484 | - <img src="~/../content/images/common/skin1.jpg" alt=""> | |
485 | - </button> | |
474 | + <button id="btnEthnicW" class="thumbnail skinmarginbtm6" ng-model="formsetting.ethnicity" ng-click="ChangeEthnicity(formsetting,'W')"> <img src="~/../content/images/common/skin1.jpg" alt=""> </button> | |
486 | 475 | </div> |
487 | 476 | <div class="col-sm-5"> |
488 | - <button id="btnEthnicB" class="thumbnail skinmarginbtm6" ng-model="formsetting.ethnicity" ng-click="ChangeEthnicity(formsetting,'B')"> | |
489 | - <img src="~/../content/images/common/skin2.jpg" alt=""> | |
490 | - </button> | |
477 | + <button id="btnEthnicB" class="thumbnail skinmarginbtm6" ng-model="formsetting.ethnicity" ng-click="ChangeEthnicity(formsetting,'B')"> <img src="~/../content/images/common/skin2.jpg" alt=""> </button> | |
491 | 478 | </div> |
492 | 479 | <div class="col-sm-5"> |
493 | - <button id="btnEthnicL" class="thumbnail skinmarginbtm6" ng-model="formsetting.ethnicity" ng-click="ChangeEthnicity(formsetting,'A')"> | |
494 | - <img src="~/../content/images/common/skin3.jpg" alt=""> | |
495 | - </button> | |
480 | + <button id="btnEthnicL" class="thumbnail skinmarginbtm6" ng-model="formsetting.ethnicity" ng-click="ChangeEthnicity(formsetting,'A')"> <img src="~/../content/images/common/skin3.jpg" alt=""> </button> | |
496 | 481 | </div> |
497 | 482 | <div class="col-sm-5"> |
498 | - <button id="btnEthnicA" class="thumbnail skinmarginbtm6" ng-model="formsetting.ethnicity" ng-click="ChangeEthnicity(formsetting,'L')"> | |
499 | - <img src="~/../content/images/common/skin4.jpg" alt=""> | |
500 | - </button> | |
483 | + <button id="btnEthnicA" class="thumbnail skinmarginbtm6" ng-model="formsetting.ethnicity" ng-click="ChangeEthnicity(formsetting,'L')"> <img src="~/../content/images/common/skin4.jpg" alt=""> </button> | |
501 | 484 | </div> |
502 | 485 | </div> |
503 | 486 | </div> |
504 | - | |
505 | 487 | </div> |
506 | 488 | </div> |
507 | 489 | <div class=""> |
... | ... | @@ -559,7 +541,6 @@ |
559 | 541 | <div class="row"> |
560 | 542 | <div class="col-sm-12"> |
561 | 543 | <h5>Mode</h5> |
562 | - | |
563 | 544 | <div class="btn-group btn-group-justified" role="group" aria-label="..."> |
564 | 545 | <div class="btn-group" role="group" tooltip> |
565 | 546 | <div id="identify-block" style="display: none; font-size:13px;">Identify Mode</div> |
... | ... | @@ -570,7 +551,6 @@ |
570 | 551 | <button id="DrawMode" type="button" ng-click="DrawingMode()" class="btn btn-sm btn-success">Draw</button> |
571 | 552 | </div> |
572 | 553 | </div> |
573 | - | |
574 | 554 | </div> |
575 | 555 | <div class="col-sm-12"> |
576 | 556 | <h5>Tools</h5> |
... | ... | @@ -596,59 +576,44 @@ |
596 | 576 | |
597 | 577 | <div id="edit-block" style="display: none; font-size: 13px;">Edit Shape Style</div> |
598 | 578 | <div id="previewBorder" class="outlinediv" ng-mouseover="mouseMoveToolTip(170, 170, 120, 'Edit Style')" ng-mouseleave="mouseOutToolTip()"> |
599 | - <div id="shapeStyleDiv" style="background-color: #ffffff;" class="fullcolordiv" ng-click="disableAnnotationtoolOnListManager||enableAnnotationToolBar()"> | |
600 | - | |
601 | - </div> | |
602 | - | |
579 | + <div id="shapeStyleDiv" style="background-color: #ffffff;" class="fullcolordiv" ng-click="disableAnnotationtoolOnListManager||enableAnnotationToolBar()"> </div> | |
603 | 580 | </div> |
604 | 581 | </div> |
605 | 582 | <div class="well well-popup"> |
606 | 583 | <div class="" role="group" aria-label="..."> |
607 | 584 | <div> |
608 | 585 | <a href="#canvasPaint" data-size="1" data-color="#fff" id="annotationpaintbrushsize" ng-mouseover="mouseMoveToolTip(270, 50, 120, 'Paint')" ng-mouseleave="mouseOutToolTip()" class="btn btn-black-annotation btn-xs pull-left btn-annotation btn-annotation-brush" role="button" data-placement="top" style="margin-right:1%;" ng-click="paintBrush()"><i class="fa fa-paint-brush"></i></a> |
609 | - <button type="button" class="btn btn-black-annotation btn-xs pull-left btn-annotation btn-annotation-erase" data-placement="top" ng-click="EraseDrawing()" ng-mouseover="mouseMoveToolTip(270, 70, 120, 'Erase')" ng-mouseleave="mouseOutToolTip()"><i class="fa fa-eraser"></i></button> | |
586 | + <button type="button" class="btn btn-black-annotation btn-xs pull-left btn-annotation btn-annotation-erase" data-placement="top" ng-click="EraseDrawing()" ng-mouseover="mouseMoveToolTip(270, 70, 120, 'Erase')" ng-mouseleave="mouseOutToolTip()"><i class="fa fa-eraser"></i></button> | |
587 | + | |
610 | 588 | <div style="width: 80px; margin: 0px 0px 0px 4px; display: inline-block;float:left;"> |
611 | 589 | <div style="width: 58px; float: left;" ng-mouseover="mouseMoveToolTip(270, 100, 120, 'Brush Size')" ng-mouseleave="mouseOutToolTip()"> |
612 | 590 | <input type="text" id="btnBrushSize" class="form-control" value="1" style="height:32px;border-radius:0;" oninput="Brushsize(this)"> |
613 | 591 | </div> |
614 | 592 | <div style="width: 22px; float: left;"> |
615 | 593 | <div style="width: 100%; float: left; height: 16px;"> |
616 | - <button type="button" id="btnBrushSizeIncrement" ng-mouseover="mouseMoveToolTip(270, 100, 120, 'Brush Size')" ng-mouseleave="mouseOutToolTip()" class="btn btn-default" style="padding:0 5px;border-radius:0;font-size: 10px;vertical-align:top;"> | |
617 | - | |
618 | - <img style="width:10px;height:10px;" src="~/../content/images/DA/angle-up.png"> | |
619 | - </button> | |
594 | + <button type="button" id="btnBrushSizeIncrement" ng-mouseover="mouseMoveToolTip(270, 100, 120, 'Brush Size')" ng-mouseleave="mouseOutToolTip()" class="btn btn-default" style="padding:0 5px;border-radius:0;font-size: 10px;vertical-align:top;"> <img style="width:10px;height:10px;" src="~/../content/images/DA/angle-up.png"> </button> | |
620 | 595 | </div> |
621 | 596 | <div style="width: 100%; float: left; height: 16px;"> |
622 | - <button type="button" id="btnBrushSizeDecrease" ng-mouseover="mouseMoveToolTip(270, 100, 120, 'Brush Size')" ng-mouseleave="mouseOutToolTip()" class="btn btn-default" style="padding:0 5px;border-radius:0;font-size: 10px;vertical-align:top;"> | |
623 | - <img style="width:10px;height:10px;" src="~/../content/images/DA/angle-down.png"> | |
624 | - </button> | |
597 | + <button type="button" id="btnBrushSizeDecrease" ng-mouseover="mouseMoveToolTip(270, 100, 120, 'Brush Size')" ng-mouseleave="mouseOutToolTip()" class="btn btn-default" style="padding:0 5px;border-radius:0;font-size: 10px;vertical-align:top;"> <img style="width:10px;height:10px;" src="~/../content/images/DA/angle-down.png"> </button> | |
625 | 598 | </div> |
626 | 599 | </div> |
627 | - | |
628 | 600 | </div> |
629 | - | |
630 | 601 | <div class="pull-left" style="width:45%; margin-left:2%;margin-top:5px;"> |
631 | 602 | <div id="slider-range-min-2" ng-mouseover="mouseMoveToolTip(270, 170, 120, 'Brush Size')" ng-mouseleave="mouseOutToolTip()"></div> |
632 | 603 | </div> |
633 | 604 | <div class="clearfix"></div> |
634 | 605 | </div> |
635 | - | |
636 | 606 | </div> |
637 | - | |
638 | - | |
639 | 607 | </div> |
640 | - | |
641 | 608 | </div> |
642 | 609 | </div> |
643 | 610 | </div> |
644 | - | |
645 | 611 | </div> |
646 | 612 | </div> |
647 | 613 | </div> |
648 | 614 | |
649 | 615 | <!--Modal For Annotation Text Box--> |
650 | 616 | <div id="annotationTextModal" style="display:none;z-index: 1000000000;width:500px;height:241px;padding-right:0!important;position:fixed;left:0;right:0;top:0px;bottom:0;margin:auto;"> |
651 | - | |
652 | 617 | <div class="modal-content"> |
653 | 618 | <div class="modal-header" style="background-color: #808D43;padding:10px;border-bottom:0;"> |
654 | 619 | <!--<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>--> |
... | ... | @@ -672,41 +637,11 @@ |
672 | 637 | <option>48</option> |
673 | 638 | <option>72</option> |
674 | 639 | </select> |
675 | - <span style="vertical-align:middle;"> | |
676 | - <span id="text-bold" class="Edittext-btn-css"> | |
677 | - <i aria-hidden="true" class="fa fa-bold" style="color: #fff"></i> | |
678 | - </span> | |
679 | - <span id="text-italic" class="Edittext-btn-css"> | |
680 | - <i class="fa fa-italic" aria-hidden="true" style="color: #fff"></i> | |
681 | - | |
682 | - </span> | |
683 | - <span id="text-underline" class="underline-btn-css"> | |
684 | - <i class="fa fa-underline" aria-hidden="true" style="color: #fff"></i> | |
685 | - </span> | |
686 | - </span> | |
687 | - | |
640 | + <span style="vertical-align:middle;"> <span id="text-bold" class="Edittext-btn-css"> <i aria-hidden="true" class="fa fa-bold" style="color: #fff"></i> </span> <span id="text-italic" class="Edittext-btn-css"> <i class="fa fa-italic" aria-hidden="true" style="color: #fff"></i> </span> <span id="text-underline" class="underline-btn-css"> <i class="fa fa-underline" aria-hidden="true" style="color: #fff"></i> </span> </span> | |
688 | 641 | <div class="form-group" id="font-color" style="display:inline-flex;vertical-align:top;cursor:pointer;margin-right:36px;"> |
689 | - | |
690 | 642 | <input type="text" id="saturation-demo" class="form-control demo" data-control="saturation" style="display:none;" value="#0088cc"> |
691 | 643 | </div> |
692 | - | |
693 | - <span style="vertical-align:middle;"> | |
694 | - <span id="text-left" class="Edittext-btn-css"> | |
695 | - <i aria-hidden="true" class="fa fa-align-left" style="color: #fff"></i> | |
696 | - </span> | |
697 | - <span id="text-center" class="Edittext-btn-css"> | |
698 | - <i class="fa fa-align-center" aria-hidden="true" style="color: #fff"></i> | |
699 | - | |
700 | - | |
701 | - </span> | |
702 | - <span id="text-right" class="underline-btn-css"> | |
703 | - <i class="fa fa-align-right" aria-hidden="true" style="color: #fff"></i> | |
704 | - | |
705 | - | |
706 | - </span> | |
707 | - </span> | |
708 | - | |
709 | - | |
644 | + <span style="vertical-align:middle;"> <span id="text-left" class="Edittext-btn-css"> <i aria-hidden="true" class="fa fa-align-left" style="color: #fff"></i> </span> <span id="text-center" class="Edittext-btn-css"> <i class="fa fa-align-center" aria-hidden="true" style="color: #fff"></i> </span> <span id="text-right" class="underline-btn-css"> <i class="fa fa-align-right" aria-hidden="true" style="color: #fff"></i> </span> </span> | |
710 | 645 | </div> |
711 | 646 | </div> |
712 | 647 | <textarea class="form-control" id="text_area" rows="3" style="font-family: 'Verdana, sans-serif';font-size:14px; font-weight: normal; font-style: normal; color: #000; text-align: left; text-decoration: none;"></textarea> |
... | ... | @@ -717,12 +652,8 @@ |
717 | 652 | <button type="button" id="saveBtn" class="btn btn-primary" data-dismiss="modal" ng-click="saveText()">Save</button> |
718 | 653 | </div> |
719 | 654 | </div> |
720 | - | |
721 | 655 | </div> |
722 | 656 | |
723 | - | |
724 | - | |
725 | - | |
726 | 657 | <!--List manager--> |
727 | 658 | <!--List manager--> |
728 | 659 | <style> |
... | ... | @@ -771,7 +702,6 @@ |
771 | 702 | <div class="modal-body"> |
772 | 703 | <div class="row paddingTopBtm10"> |
773 | 704 | <div class="col-sm-12" ng-init="FillListManager()"> |
774 | - | |
775 | 705 | <div class="form-group"> |
776 | 706 | <label for="sel1">Window</label> |
777 | 707 | <select class="form-control" id="viewName" disabled> |
... | ... | @@ -781,13 +711,9 @@ |
781 | 711 | </div> |
782 | 712 | <div style=""> |
783 | 713 | <div class="form-group"> |
784 | - <div ng-click="restrictBodySystemList()" class="btn btn-success btn-block" style="padding:3px 12px;"> | |
785 | - <i class=" fa fa-caret-right restrict-carret-icon"></i> <span>Restrict List to</span> | |
786 | - </div> | |
714 | + <div ng-click="restrictBodySystemList()" class="btn btn-success btn-block" style="padding:3px 12px;"> <i class=" fa fa-caret-right restrict-carret-icon"></i> <span>Restrict List to</span> </div> | |
787 | 715 | </div> |
788 | - | |
789 | - <div id="restrictListDiv" style="display:none;"> | |
790 | - | |
716 | + <div id="restrictListDiv" style="display:none;"> | |
791 | 717 | <div class="well well-sm marginTopBtm10"> |
792 | 718 | <div class="form-horizontal"> |
793 | 719 | <div class="form-group"> |
... | ... | @@ -802,28 +728,20 @@ |
802 | 728 | <select class="form-control" disabled> |
803 | 729 | <option value="1" selected="">Entire View</option> |
804 | 730 | </select> |
805 | - </div> | |
731 | + </div> | |
806 | 732 | </div> |
807 | 733 | </div> |
808 | 734 | </div> |
809 | - | |
810 | - | |
811 | 735 | </div> |
812 | 736 | |
813 | 737 | <!--DA > List Manager > Multiple structure selection should not be available.--> |
814 | 738 | <div class="form-group"> |
815 | 739 | <select id="termList" class="form-control" size="10" onclick="if (typeof (this.selectedIndex) != 'undefined') onListManagerTermSelection(this.options[this.selectedIndex].id)"></select> |
816 | 740 | </div> |
817 | - | |
818 | 741 | </div> |
819 | 742 | <div style="clear:both;"></div> |
820 | - | |
821 | - | |
822 | - | |
823 | - | |
824 | 743 | </div> |
825 | 744 | </div> |
826 | - | |
827 | 745 | </div> |
828 | 746 | <div class="modal-footer" id="totalTerms"> |
829 | 747 | <!--<span class="pull-left marginTop5">424 Structures</span>--> |
... | ... | @@ -835,10 +753,8 @@ |
835 | 753 | |
836 | 754 | <div id="modelbackground"></div> |
837 | 755 | |
838 | - | |
839 | 756 | <!--Edit Shape Modal--> |
840 | 757 | |
841 | - | |
842 | 758 | <div class="modeleditstyle" id="modeleditstyle" style="z-index: 1000000000; background: white;width: 302px;position:absolute;left:40%;right:0;top:70px;"> |
843 | 759 | <div class="modal-content"> |
844 | 760 | <div class="modal-header annotation-modal-header"> |
... | ... | @@ -851,29 +767,26 @@ |
851 | 767 | <div class="col-sm-12"> |
852 | 768 | <div class="checkbox no-margin"> |
853 | 769 | <label> |
854 | - <input id="fill-option" type="checkbox" checked onclick="enableDisableFillOption()"> Fill Option | |
770 | + <input id="fill-option" type="checkbox" checked onclick="enableDisableFillOption()"> | |
771 | + Fill Option | |
855 | 772 | </label> |
856 | 773 | </div> |
857 | 774 | </div> |
858 | 775 | <div class="col-sm-6 enableDisableOpacity"> |
859 | 776 | <!--<div class="radio"> |
860 | - <label> | |
861 | - <input type="radio" name="filloption" id="filloption1" value="filloption1"> | |
862 | - <span class="">Texture</span> | |
863 | - <img id="editstyleTexture" src="~/../content/images/common/annotation-tool-bar/pattern-picker.png" alt="" class="pattern-picker" data-toggle="modal" data-target="#pattern"> | |
864 | - </label> | |
865 | - </div>--> | |
777 | + <label> | |
778 | + <input type="radio" name="filloption" id="filloption1" value="filloption1"> | |
779 | + <span class="">Texture</span> | |
780 | + <img id="editstyleTexture" src="~/../content/images/common/annotation-tool-bar/pattern-picker.png" alt="" class="pattern-picker" data-toggle="modal" data-target="#pattern"> | |
781 | + </label> | |
782 | + </div>--> | |
866 | 783 | <div class="radio"> |
867 | 784 | <label> |
868 | 785 | <input type="radio" name="filloption" id="filloption2" value="filloption2" checked style="margin-top:8px;"> |
869 | - | |
870 | - | |
871 | 786 | <div id="editstylebackgroundcolor" class="form-group" style="display:inline-flex;vertical-align:top;cursor:pointer;margin-right:36px;"> |
872 | 787 | <span style="font-weight: normal; float: left; padding-top: 5px; padding-right: 5px;">Color</span> |
873 | 788 | <input type="text" class="form-control outerBackgroundColor" data-control="saturation" style="display:none;" value="#0088cc"> |
874 | 789 | </div> |
875 | - | |
876 | - | |
877 | 790 | </label> |
878 | 791 | </div> |
879 | 792 | </div> |
... | ... | @@ -884,20 +797,15 @@ |
884 | 797 | <div id="slider-range-min-3"></div> |
885 | 798 | </div> |
886 | 799 | </div> |
887 | - | |
888 | 800 | <div class="row"> |
889 | 801 | <label class="pull-left" style="font-weight:normal;">Opacity</label> |
890 | 802 | <div id="edit-slider-4" class="pull-left" style="width:53%; margin-left:3%; margin-top:2%;"> |
891 | 803 | <div id="slider-range-min-4"></div> |
892 | 804 | </div> |
893 | 805 | </div> |
894 | - | |
895 | 806 | <div class="clearfix"></div> |
896 | - | |
897 | - | |
898 | 807 | </div> |
899 | 808 | </div> |
900 | - | |
901 | 809 | </div> |
902 | 810 | </div> |
903 | 811 | <div class="marginTopBtm10"> |
... | ... | @@ -906,7 +814,8 @@ |
906 | 814 | <div class="col-sm-12"> |
907 | 815 | <div class="checkbox no-margin"> |
908 | 816 | <label> |
909 | - <input id="Outline-Option" onclick="enableDisableOutline()" type="checkbox" checked> Outline Option | |
817 | + <input id="Outline-Option" onclick="enableDisableOutline()" type="checkbox" checked> | |
818 | + Outline Option | |
910 | 819 | </label> |
911 | 820 | </div> |
912 | 821 | </div> |
... | ... | @@ -914,14 +823,10 @@ |
914 | 823 | <label class="marginTop5"> |
915 | 824 | <span style="font-weight: normal; float: left; padding-top: 5px; padding-right: 5px;">Color</span> |
916 | 825 | <div class="form-group" id="outlineColor" style="display:inline-flex;vertical-align:top;cursor:pointer;margin-right:36px;"> |
917 | - | |
918 | 826 | <input type="text" class="form-control borderColorCanvasPreview" data-control="saturation" style="display:none;" value="#0088cc"> |
919 | 827 | </div> |
920 | - | |
921 | - | |
922 | 828 | </label> |
923 | 829 | </div> |
924 | - | |
925 | 830 | <div class="col-sm-6 setEnableDisableForEditShapeStyle"> |
926 | 831 | <div class="form-horizontal"> |
927 | 832 | <div class="form-group"> |
... | ... | @@ -938,26 +843,19 @@ |
938 | 843 | </div> |
939 | 844 | </div> |
940 | 845 | </div> |
941 | - | |
942 | 846 | </div> |
943 | 847 | </div> |
944 | 848 | </div> |
945 | - | |
946 | 849 | <div class="marginTopBtm10"> |
947 | - | |
948 | 850 | <div class="well well-sm no-margin-btm blankshapediv"> |
949 | 851 | <div class="outlinediv" id="outlinedivId" style="border: 1px solid #000000;"> |
950 | - <div id="imgOpacity" style="background-color: #ffffff" class="fullcolordiv imgopacity"> | |
951 | - </div> | |
852 | + <div id="imgOpacity" style="background-color: #ffffff" class="fullcolordiv imgopacity"> </div> | |
952 | 853 | </div> |
953 | 854 | </div> |
954 | - | |
955 | 855 | </div> |
956 | 856 | </div> |
957 | 857 | <div class="modal-footer"> |
958 | - <button id="btnShapeStyle" type="button" class="btn btn-primary btn-sm" ng-click="setPropertiesForShapes('imgOpacity')"> | |
959 | - OK | |
960 | - </button> | |
858 | + <button id="btnShapeStyle" type="button" class="btn btn-primary btn-sm" ng-click="setPropertiesForShapes('imgOpacity')"> OK </button> | |
961 | 859 | <button type="button" class="btn btn-primary btn-sm" data-dismiss="modal" ng-click="disableAnnotationToolBar()">Cancel</button> |
962 | 860 | </div> |
963 | 861 | </div> |
... | ... | @@ -983,16 +881,17 @@ |
983 | 881 | </div> |
984 | 882 | </div> |
985 | 883 | </div> |
986 | - | |
987 | 884 | </div> |
988 | 885 | <div class="modal-footer"> |
989 | 886 | <div class="row"> |
990 | 887 | <input type="file" id="file1" style="display:none"> |
991 | 888 | <!--<a href="data:application/xml;charset=utf-8,your code here" download="filename.html">Save</a-->> |
992 | - <div class="col-sm-12"><button id="btnSaveEI" class="btn btn-primary" type="button">Ok</button></div> <!--onclick="makeScreenshot();"--><!--ng-click="dialogs.saveAs()"--><!--ng-click="ShowAlert()"--> | |
889 | + <div class="col-sm-12"> | |
890 | + <button id="btnSaveEI" class="btn btn-primary" type="button">Ok</button> | |
891 | + </div> | |
892 | + <!--onclick="makeScreenshot();"--><!--ng-click="dialogs.saveAs()"--><!--ng-click="ShowAlert()"--> | |
993 | 893 | </div> |
994 | 894 | </div> |
995 | - | |
996 | 895 | </div> |
997 | 896 | </div> |
998 | 897 | </div> |
... | ... | @@ -1001,25 +900,13 @@ |
1001 | 900 | <div class="print-box portrait-box" id="printBox" style="display: none;"> |
1002 | 901 | <div id="printDivContent"> |
1003 | 902 | <div class=""> |
1004 | - <div class="col-sm-6" style="top: 10px; position: absolute; left: 10px;"> | |
1005 | - <span class="pull-left font12 span-font" id="spnModule"></span> | |
1006 | - </div> | |
1007 | - <div class="col-sm-6" style="top: 10px; position: absolute; right: 10px;"> | |
1008 | - <span class="pull-right font12 span-font" id="spnBodyViewTitle"></span> | |
1009 | - </div> | |
1010 | - </div> | |
1011 | - <div class=" mar-top-25" align="center" id="dvPortrait" style="text-align: center;"> | |
1012 | - <img src="" alt="" class="logo-image" id="snipImage" style="width: 100%;" /> | |
903 | + <div class="col-sm-6" style="top: 10px; position: absolute; left: 10px;"> <span class="pull-left font12 span-font" id="spnModule"></span> </div> | |
904 | + <div class="col-sm-6" style="top: 10px; position: absolute; right: 10px;"> <span class="pull-right font12 span-font" id="spnBodyViewTitle"></span> </div> | |
1013 | 905 | </div> |
906 | + <div class=" mar-top-25" align="center" id="dvPortrait" style="text-align: center;"> <img src="" alt="" class="logo-image" id="snipImage" style="width: 100%;" /> </div> | |
1014 | 907 | <div> |
1015 | - <div class="col-sm-8" style="position: absolute; bottom: 20px;"> | |
1016 | - <span class="pull-left marginTop10 font12 span-font">Copyright 2016 A.D.A.M., Inc. All Rights Reserved</span> | |
1017 | - </div> | |
1018 | - <div class="col-sm-4" style="position: absolute; bottom: 20px; right: 10px;"> | |
1019 | - <span class="pull-right marginTop10 bgnone no-margin"> | |
1020 | - <img class="logo-image" src="content/images/adam-logo-small.png" alt=""> | |
1021 | - </span> | |
1022 | - </div> | |
908 | + <div class="col-sm-8" style="position: absolute; bottom: 20px;"> <span class="pull-left marginTop10 font12 span-font">Copyright 2016 A.D.A.M., Inc. All Rights Reserved</span> </div> | |
909 | + <div class="col-sm-4" style="position: absolute; bottom: 20px; right: 10px;"> <span class="pull-right marginTop10 bgnone no-margin"> <img class="logo-image" src="content/images/adam-logo-small.png" alt=""> </span> </div> | |
1023 | 910 | </div> |
1024 | 911 | <div class="clearfix"></div> |
1025 | 912 | </div> |
... | ... | @@ -1027,132 +914,242 @@ |
1027 | 914 | |
1028 | 915 | <!--Print Preview Modal--> |
1029 | 916 | <div id="dvPrintPreview" style="display: none;"></div> |
917 | + </div> | |
918 | + </div> | |
919 | + <!--RESET PASSWORD FORM--> | |
920 | + <div id="passwordReset" ng-show="isVisibleResetPass"> | |
921 | + <table width="500" border="0" align="center" cellpadding="0" cellspacing="0"> | |
922 | + <tbody> | |
923 | + <tr> | |
924 | + <td align="center" valign="middle" bgcolor="#393939 " style="padding:30px 0 20px 0;"><a href="#"><img src="../content/images/logo.png" alt="AIA" title="AIA" /></a></td> | |
925 | + </tr> | |
926 | + <tr> | |
927 | + <td align="center" valign="top" bgcolor="#808d43" style="padding:20px; overflow:hidden;"> | |
928 | + <table width="100%" border="0" cellspacing="0" cellpadding="0" id='resetPwdform' ng-controller="HomeController"> | |
929 | + <!--ng-show="isVisibleResetPass"--> | |
930 | + <tbody> | |
931 | + | |
932 | + <tr> | |
933 | + <td style=" font-size:26px; font-weight:bold; color:#fff; font-family:Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif"><strong>Reset Password</strong></td> | |
934 | + </tr> | |
935 | + <tr> | |
936 | + <td> </td> | |
937 | + </tr> | |
938 | + <tr> | |
939 | + <td style="font-family:Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; color:#fff;">New Password </td> | |
940 | + </tr> | |
941 | + <tr> | |
942 | + <td><input class="form-control" id="" value="*****" type="password" style="padding:3px 5px; height:25px; width:98%;" ng-model="userInfo.newpass"></td> | |
943 | + </tr> | |
944 | + <tr> | |
945 | + <td> </td> | |
946 | + </tr> | |
947 | + <tr> | |
948 | + <td style="font-family:Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; color:#fff;">Confirm Password </td> | |
949 | + </tr> | |
950 | + | |
951 | + <tr> | |
952 | + <td><input class="form-control" id="" value="*****" ng-model="userInfo.newpass2" type="password" style="padding:3px 5px; height:25px; width:98%;"></td> | |
953 | + </tr> | |
954 | + <tr> | |
955 | + <td> </td> | |
956 | + </tr> | |
957 | + <tr> | |
958 | + <td> | |
959 | + <button type="submit" ng-click="UpdateUserPassword(userInfo)" style="color:#423030; background:#ff9900; border:1px solid #ff9900; cursor:pointer; color:#fff; padding:5px 10px; font-size:16px; text-transform:uppercase; text-align:center; text-decoration:none; font-family:Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif" id="btnUpdatePass">Submit</button> | |
960 | + <button type="submit" style="color:#423030; background:#231f20; border:1px solid #231f20; cursor:pointer; color:#fff; padding:5px 10px; font-size:16px; text-transform:uppercase; text-align:center; text-decoration:none; font-family:Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif">Close</button> | |
961 | + </td> | |
962 | + </tr> | |
963 | + </tbody> | |
964 | + </table> | |
965 | + </tr> | |
966 | + | |
967 | + | |
968 | + </tbody> | |
969 | + </table> | |
970 | + </div> | |
971 | + <!--<div id='resetPwdform' ng-show="isVisibleResetPass" data-toggle="modal"> | |
972 | + <div class="modal fade" tabindex="-1" role="dialog" id="reset"> | |
973 | + <div class="modal-dialog" role="document"> | |
974 | + <div class="modal-content"> | |
975 | + <div class="modal-header"> | |
976 | + <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> | |
977 | + <h4 class="modal-title">Reset Password</h4> | |
978 | + </div> | |
979 | + <div class="modal-body"> | |
980 | + <form id="resetPass" class="form-horizontal pad20"> | |
981 | + <div class="form-group"> | |
982 | + <label for="Newpass">New Password</label> | |
983 | + <input class="form-control" id="" placeholder="*****" type="email" ng-model="password" required ng-show="restPasss.email.$error.required"> | |
984 | + </div> | |
1030 | 985 | |
1031 | - <!--<div class="modal fade" id="editshapestyle" tabindex="-1" role="dialog" aria-labelledby="myModalLabel33" style="z-index:1000000000;width:302px;margin-left:auto;margin-right:auto;overflow:hidden;height:460px;"> | |
1032 | - <div class="modal-dialog modal-sm" role="document"> | |
1033 | - <div class="modal-content"> | |
1034 | - <div class="modal-header annotation-modal-header"> | |
1035 | - <h4 class="modal-title" id="myModalLabel33">Edit Shape Style</h4> | |
986 | + <div class="form-group"> | |
987 | + <label for="confom">Confirm Password</label> | |
988 | + <input class="form-control" id="" placeholder="*****" type="email" ng-model="password2" required ng-show="restpasss.email.$error.required"> | |
989 | + </div> | |
990 | + </form> | |
991 | + </div> | |
992 | + <div class="modal-footer"> | |
993 | + <button type="button" class="btn btn-info" ng-click="CallResetPassword">Submit</button> | |
994 | + <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button> | |
995 | + </div> | |
1036 | 996 | </div> |
1037 | - <div class="modal-body"> | |
1038 | - <div class="marginTopBtm10"> | |
1039 | - <div class="well well-sm no-margin-btm"> | |
1040 | - <div class="row"> | |
1041 | - <div class="col-sm-12"> | |
1042 | - <div class="checkbox no-margin"> | |
1043 | - <label> | |
1044 | - <input id="fill-option" type="checkbox" checked onclick="enableDisableFillOption()"> Fill Option | |
1045 | - </label> | |
1046 | - </div> | |
1047 | - </div> | |
1048 | - <div class="col-sm-6 enableDisableOpacity"> | |
1049 | - <div class="radio"> | |
1050 | - <label> | |
1051 | - <input type="radio" name="filloption" id="filloption1" value="filloption1"> | |
1052 | - <span class="">Texture</span> | |
1053 | - <img id="editstyleTexture" src="~/../content/images/common/annotation-tool-bar/pattern-picker.png" alt="" class="pattern-picker" data-toggle="modal" data-target="#pattern"> | |
1054 | - </label> | |
997 | + </div> | |
998 | + </div> | |
999 | + </div>--> | |
1000 | + <!--<div class="modal fade reset-pass" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" ng-show="isVisibleResetPass" data-tar> | |
1001 | + <div class="modal-dialog" role="document"> | |
1002 | + <div class="modal-content"> | |
1003 | + <div class="modal-header"> | |
1004 | + <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> | |
1005 | + <h4 class="modal-title">Reset Password</h4> | |
1006 | + </div> | |
1007 | + | |
1008 | + <form class="form-horizontal pad20"> | |
1009 | + <div class="form-group"> | |
1010 | + <label for="Newpass">New Password</label> | |
1011 | + <input class="form-control" id="" placeholder="*****" type="email"> | |
1012 | + </div> | |
1013 | + | |
1014 | + <div class="form-group"> | |
1015 | + <label for="confom">Confirm Password</label> | |
1016 | + <input class="form-control" id="" placeholder="*****" type="email"> | |
1017 | + </div> | |
1018 | + </form> | |
1019 | + | |
1020 | + <div class="modal-footer"> | |
1021 | + | |
1022 | + <button type="button" class="btn btn-info">Save changes</button> | |
1023 | + <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button> | |
1024 | + </div> | |
1025 | + </div> | |
1026 | + </div> | |
1027 | + </div>--> | |
1028 | + <!--<div class="modal fade" id="editshapestyle" tabindex="-1" role="dialog" aria-labelledby="myModalLabel33" style="z-index:1000000000;width:302px;margin-left:auto;margin-right:auto;overflow:hidden;height:460px;"> | |
1029 | + <div class="modal-dialog modal-sm" role="document"> | |
1030 | + <div class="modal-content"> | |
1031 | + <div class="modal-header annotation-modal-header"> | |
1032 | + <h4 class="modal-title" id="myModalLabel33">Edit Shape Style</h4> | |
1033 | + </div> | |
1034 | + <div class="modal-body"> | |
1035 | + <div class="marginTopBtm10"> | |
1036 | + <div class="well well-sm no-margin-btm"> | |
1037 | + <div class="row"> | |
1038 | + <div class="col-sm-12"> | |
1039 | + <div class="checkbox no-margin"> | |
1040 | + <label> | |
1041 | + <input id="fill-option" type="checkbox" checked onclick="enableDisableFillOption()"> Fill Option | |
1042 | + </label> | |
1043 | + </div> | |
1055 | 1044 | </div> |
1056 | - <div class="radio"> | |
1057 | - <label> | |
1058 | - <input type="radio" name="filloption" id="filloption2" value="filloption2" checked style="margin-top:8px;"> | |
1045 | + <div class="col-sm-6 enableDisableOpacity"> | |
1046 | + <div class="radio"> | |
1047 | + <label> | |
1048 | + <input type="radio" name="filloption" id="filloption1" value="filloption1"> | |
1049 | + <span class="">Texture</span> | |
1050 | + <img id="editstyleTexture" src="~/../content/images/common/annotation-tool-bar/pattern-picker.png" alt="" class="pattern-picker" data-toggle="modal" data-target="#pattern"> | |
1051 | + </label> | |
1052 | + </div> | |
1053 | + <div class="radio"> | |
1054 | + <label> | |
1055 | + <input type="radio" name="filloption" id="filloption2" value="filloption2" checked style="margin-top:8px;"> | |
1059 | 1056 | |
1060 | 1057 | |
1061 | - <div id="editstylebackgroundcolor" class="form-group" style="display:inline-flex;vertical-align:top;cursor:pointer;margin-right:36px;"> | |
1062 | - <span style="font-weight: normal; float: left; padding-top: 5px; padding-right: 5px;">Color</span> | |
1063 | - <input type="text" class="form-control outerBackgroundColor" data-control="saturation" style="display:none;" value="#0088cc"> | |
1064 | - </div> | |
1058 | + <div id="editstylebackgroundcolor" class="form-group" style="display:inline-flex;vertical-align:top;cursor:pointer;margin-right:36px;"> | |
1059 | + <span style="font-weight: normal; float: left; padding-top: 5px; padding-right: 5px;">Color</span> | |
1060 | + <input type="text" class="form-control outerBackgroundColor" data-control="saturation" style="display:none;" value="#0088cc"> | |
1061 | + </div> | |
1065 | 1062 | |
1066 | 1063 | |
1067 | 1064 | |
1068 | - </label> | |
1065 | + </label> | |
1066 | + </div> | |
1069 | 1067 | </div> |
1070 | - </div> | |
1071 | - <div class="col-sm-6 no-padding marginTop10 enableDisableOpacity"> | |
1072 | - <div class="row"> | |
1073 | - <label class="pull-left" style="font-weight:normal;">Scale</label> | |
1074 | - <div id="edit-slider-3" class="pull-left" style="width:62%; margin-left:3%; margin-top:2%;"> | |
1075 | - <div id="slider-range-min-3"></div> | |
1068 | + <div class="col-sm-6 no-padding marginTop10 enableDisableOpacity"> | |
1069 | + <div class="row"> | |
1070 | + <label class="pull-left" style="font-weight:normal;">Scale</label> | |
1071 | + <div id="edit-slider-3" class="pull-left" style="width:62%; margin-left:3%; margin-top:2%;"> | |
1072 | + <div id="slider-range-min-3"></div> | |
1076 | 1073 | |
1074 | + </div> | |
1077 | 1075 | </div> |
1078 | - </div> | |
1079 | 1076 | |
1080 | - <div class="row"> | |
1081 | - <label class="pull-left" style="font-weight:normal;">Opacity</label> | |
1082 | - <div id="edit-slider-4" class="pull-left" style="width:53%; margin-left:3%; margin-top:2%;"> | |
1083 | - <div id="slider-range-min-4"></div> | |
1077 | + <div class="row"> | |
1078 | + <label class="pull-left" style="font-weight:normal;">Opacity</label> | |
1079 | + <div id="edit-slider-4" class="pull-left" style="width:53%; margin-left:3%; margin-top:2%;"> | |
1080 | + <div id="slider-range-min-4"></div> | |
1081 | + </div> | |
1084 | 1082 | </div> |
1085 | - </div> | |
1086 | 1083 | |
1087 | - <div class="clearfix"></div> | |
1084 | + <div class="clearfix"></div> | |
1088 | 1085 | |
1089 | 1086 | |
1087 | + </div> | |
1090 | 1088 | </div> |
1091 | - </div> | |
1092 | 1089 | |
1090 | + </div> | |
1093 | 1091 | </div> |
1094 | - </div> | |
1095 | - <div class="marginTopBtm10"> | |
1096 | - <div class="well well-sm no-margin-btm"> | |
1097 | - <div class="row"> | |
1098 | - <div class="col-sm-12"> | |
1099 | - <div class="checkbox no-margin"> | |
1100 | - <label> | |
1101 | - <input id="Outline-Option" onclick="enableDisableOutline()" type="checkbox" checked> Outline Option | |
1102 | - </label> | |
1092 | + <div class="marginTopBtm10"> | |
1093 | + <div class="well well-sm no-margin-btm"> | |
1094 | + <div class="row"> | |
1095 | + <div class="col-sm-12"> | |
1096 | + <div class="checkbox no-margin"> | |
1097 | + <label> | |
1098 | + <input id="Outline-Option" onclick="enableDisableOutline()" type="checkbox" checked> Outline Option | |
1099 | + </label> | |
1100 | + </div> | |
1103 | 1101 | </div> |
1104 | - </div> | |
1105 | - <div class="col-sm-6 setEnableDisableForEditShapeStyle"> | |
1106 | - <label class="marginTop5"> | |
1107 | - <span style="font-weight: normal; float: left; padding-top: 5px; padding-right: 5px;">Color</span> | |
1108 | - <div class="form-group" id="outlineColor" style="display:inline-flex;vertical-align:top;cursor:pointer;margin-right:36px;"> | |
1102 | + <div class="col-sm-6 setEnableDisableForEditShapeStyle"> | |
1103 | + <label class="marginTop5"> | |
1104 | + <span style="font-weight: normal; float: left; padding-top: 5px; padding-right: 5px;">Color</span> | |
1105 | + <div class="form-group" id="outlineColor" style="display:inline-flex;vertical-align:top;cursor:pointer;margin-right:36px;"> | |
1109 | 1106 | |
1110 | - <input type="text" class="form-control borderColorCanvasPreview" data-control="saturation" style="display:none;" value="#0088cc"> | |
1111 | - </div> | |
1107 | + <input type="text" class="form-control borderColorCanvasPreview" data-control="saturation" style="display:none;" value="#0088cc"> | |
1108 | + </div> | |
1112 | 1109 | |
1113 | 1110 | |
1114 | - </label> | |
1115 | - </div> | |
1111 | + </label> | |
1112 | + </div> | |
1116 | 1113 | |
1117 | - <div class="col-sm-6 setEnableDisableForEditShapeStyle"> | |
1118 | - <div class="form-horizontal"> | |
1119 | - <div class="form-group"> | |
1120 | - <label class="col-sm-3 control-label" style=" font-weight:normal; padding-top:9px;">Size</label> | |
1121 | - <div class="col-sm-9 marginTop5"> | |
1122 | - <select id="borderWidthCanvasElement" class="form-control input-sm"> | |
1123 | - <option value="1">1</option> | |
1124 | - <option value="2">2</option> | |
1125 | - <option value="3">3</option> | |
1126 | - <option value="4">4</option> | |
1127 | - <option value="5">5</option> | |
1128 | - </select> | |
1114 | + <div class="col-sm-6 setEnableDisableForEditShapeStyle"> | |
1115 | + <div class="form-horizontal"> | |
1116 | + <div class="form-group"> | |
1117 | + <label class="col-sm-3 control-label" style=" font-weight:normal; padding-top:9px;">Size</label> | |
1118 | + <div class="col-sm-9 marginTop5"> | |
1119 | + <select id="borderWidthCanvasElement" class="form-control input-sm"> | |
1120 | + <option value="1">1</option> | |
1121 | + <option value="2">2</option> | |
1122 | + <option value="3">3</option> | |
1123 | + <option value="4">4</option> | |
1124 | + <option value="5">5</option> | |
1125 | + </select> | |
1126 | + </div> | |
1129 | 1127 | </div> |
1130 | 1128 | </div> |
1131 | 1129 | </div> |
1132 | - </div> | |
1133 | 1130 | |
1131 | + </div> | |
1134 | 1132 | </div> |
1135 | 1133 | </div> |
1136 | - </div> | |
1137 | 1134 | |
1138 | - <div class="marginTopBtm10"> | |
1139 | - <div class="well well-sm no-margin-btm"> | |
1140 | - <img id="imgOpacity" class="img-rounded img-responsive imgopacity" alt="..." src="content/images/blank-shape.jpg"> | |
1135 | + <div class="marginTopBtm10"> | |
1136 | + <div class="well well-sm no-margin-btm"> | |
1137 | + <img id="imgOpacity" class="img-rounded img-responsive imgopacity" alt="..." src="content/images/blank-shape.jpg"> | |
1138 | + </div> | |
1141 | 1139 | </div> |
1142 | 1140 | </div> |
1143 | - </div> | |
1144 | - <div class="modal-footer"> | |
1145 | - <button type="button" class="btn btn-primary btn-sm" ng-click="setPropertiesForShapes('imgOpacity')"> | |
1141 | + <div class="modal-footer"> | |
1142 | + <button type="button" class="btn btn-primary btn-sm" ng-click="setPropertiesForShapes('imgOpacity')"> | |
1146 | 1143 | |
1147 | - OK | |
1148 | - </button> | |
1149 | - <button type="button" class="btn btn-primary btn-sm" data-dismiss="modal" ng-click="disableAnnotationToolBar()">Cancel</button> | |
1144 | + OK | |
1145 | + </button> | |
1146 | + <button type="button" class="btn btn-primary btn-sm" data-dismiss="modal" ng-click="disableAnnotationToolBar()">Cancel</button> | |
1147 | + </div> | |
1150 | 1148 | </div> |
1151 | 1149 | </div> |
1152 | - </div> | |
1153 | - </div>--> | |
1150 | + </div>--> | |
1154 | 1151 | |
1155 | - <script> | |
1152 | + <script> | |
1156 | 1153 | |
1157 | 1154 | function enableDisableFillOption() { |
1158 | 1155 | //debugger; |
... | ... | @@ -1218,9 +1215,8 @@ |
1218 | 1215 | } |
1219 | 1216 | } |
1220 | 1217 | |
1221 | - </script> | |
1222 | - | |
1223 | - <script> | |
1218 | + </script> | |
1219 | + <script> | |
1224 | 1220 | function Brushsize(object) { |
1225 | 1221 | |
1226 | 1222 | object.value = object.value.replace(/[^0-9]/g, ''); |
... | ... | @@ -1236,70 +1232,66 @@ |
1236 | 1232 | } |
1237 | 1233 | |
1238 | 1234 | } |
1239 | - </script> | |
1240 | - | |
1241 | - | |
1242 | - <!--<script src="libs/jquery/1.11.3/jquery.min.js"></script>--> | |
1243 | - <script src="libs/jquery/2.1.3/jquery.min.js"></script> | |
1244 | - <script src="libs/jquery/1.11.4/jquery-ui.js"></script> | |
1245 | - <script src="libs/jquery/jquery_plugin/jquery.mCustomScrollbar.concat.min.js"></script> | |
1246 | - <script src="themes/default/scripts/bootstrap/3.3.5/bootstrap.js"></script> | |
1247 | - <script src="libs/angular/1.4.9/angular.min.js"></script> | |
1248 | - <script src="libs/angular/1.4.9/angular-route.min.js"></script> | |
1249 | - <script src="libs/angular/1.4.9/angular-sanitize.min.js"></script> | |
1250 | - <script src="libs/angular/1.4.9/ngStorage.js"></script> | |
1251 | - <script src="content/js/custom/custom.js"></script> | |
1252 | - <!--Annotation Toolbar : jcanvas Library--> | |
1253 | - | |
1254 | - <script src="libs/jcanvas/jcanvas.min.js"></script> | |
1255 | - <script src="libs/jcanvas/jcanvas.handle.min.js"></script> | |
1256 | - | |
1257 | - <script src="libs/jinqJs.js"></script> | |
1258 | - <script src="libs/jquery/jquery_plugin/jsPanel/jspanel/jquery.jspanel.js"></script> | |
1259 | - <script src="libs/video_4_12_11/video_4_12_11.js"></script> | |
1260 | - <script src="libs/jquery/jquery_plugin/SpeechBubble/bubble.js"></script> | |
1261 | - <script src="libs/jquery/jquery_plugin/slider-pips/jquery-ui-slider-pips.js"></script> | |
1262 | - <!--<script src="libs/jquery/jquery_plugin/jsPanel/jspanel/jquery.jspanel.min.js"></script>--> | |
1263 | - <script src="app/main/AIA.js"></script> | |
1264 | - <script src="app/main/Link.js"></script> | |
1265 | - <script src="content/scripts/js/custom/custom.js"></script> | |
1266 | - <script src="app/filters/ColorMatrixFilter.js"></script> | |
1267 | - <script src="app/utility/Matrix.js"></script> | |
1268 | - <script src="app/utility/Point.js"></script> | |
1269 | - <script src="app/utility/Rectangle.js"></script> | |
1270 | - <script src="app/utility/BitmapData.js"></script> | |
1271 | - <script src="app/utility/Paint.js"></script> | |
1272 | - <script src="app/controllers/DAController.js"></script> | |
1273 | - <script src="app/controllers/CIController.js"></script> | |
1274 | - <script src="app/controllers/CAController.js"></script> | |
1275 | - <script src="app/controllers/3dAController.js"></script> | |
1276 | - <script src="app/controllers/CurrBuildController.js"></script> | |
1277 | - <script src="app/controllers/AnatTestController.js"></script> | |
1278 | - <script src="app/controllers/LabExercController.js"></script> | |
1279 | - <script src="app/controllers/ADAMImgController.js"></script> | |
1280 | - <script src="app/controllers/AODController.js"></script> | |
1281 | - <script src="app/controllers/HomeController.js"></script> | |
1282 | - <script src="app/controllers/LinkController.js"></script> | |
1283 | - <script src="app/services/AuthenticationService.js"></script> | |
1284 | - | |
1285 | - <script src="app/services/DataService.js"></script> | |
1286 | - <script src="libs/jquery/jquery_plugin/jqueryui.js"></script> | |
1287 | - | |
1288 | - <script src="libs/jquery/jquery_plugin/color-picker/jquery.minicolors.min.js"></script> | |
1289 | - <!--<script src="libs/colorpicker/jquery.minicolors.min.js"></script>--> | |
1290 | - <!--<script src="libs/color-picker/jquery.minicolors.min.js"></script>--> | |
1291 | - | |
1292 | - <script src="libs/sketch.js"></script> | |
1293 | - | |
1294 | - <!--<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.js"></script>--> | |
1295 | - <script src="libs/html2canvas.js"></script> | |
1296 | - <script src="libs/FileSaver.js"></script> | |
1297 | - <!--<script type="text/javascript"> | |
1298 | - $(function () { | |
1299 | - $('#canvas').sketch(); | |
1300 | - }); | |
1301 | - </script>--> | |
1302 | - <script> | |
1235 | + </script> | |
1236 | + | |
1237 | + <!--<script src="libs/jquery/1.11.3/jquery.min.js"></script>--> | |
1238 | + <script src="libs/jquery/2.1.3/jquery.min.js"></script> | |
1239 | + <script src="libs/jquery/1.11.4/jquery-ui.js"></script> | |
1240 | + <script src="libs/jquery/jquery_plugin/jquery.mCustomScrollbar.concat.min.js"></script> | |
1241 | + <script src="themes/default/scripts/bootstrap/3.3.5/bootstrap.js"></script> | |
1242 | + <script src="libs/angular/1.4.9/angular.min.js"></script> | |
1243 | + <script src="libs/angular/1.4.9/angular-route.min.js"></script> | |
1244 | + <script src="libs/angular/1.4.9/angular-sanitize.min.js"></script> | |
1245 | + <script src="libs/angular/1.4.9/ngStorage.js"></script> | |
1246 | + <script src="content/js/custom/custom.js"></script> | |
1247 | + <!--Annotation Toolbar : jcanvas Library--> | |
1248 | + <script src="libs/jcanvas/jcanvas.min.js"></script> | |
1249 | + <script src="libs/jcanvas/jcanvas.handle.min.js"></script> | |
1250 | + | |
1251 | + <script src="libs/jinqJs.js"></script> | |
1252 | + <script src="libs/jquery/jquery_plugin/jsPanel/jspanel/jquery.jspanel.js"></script> | |
1253 | + <script src="libs/video_4_12_11/video_4_12_11.js"></script> | |
1254 | + <script src="libs/jquery/jquery_plugin/SpeechBubble/bubble.js"></script> | |
1255 | + <script src="libs/jquery/jquery_plugin/slider-pips/jquery-ui-slider-pips.js"></script> | |
1256 | + <!--<script src="libs/jquery/jquery_plugin/jsPanel/jspanel/jquery.jspanel.min.js"></script>--> | |
1257 | + <script src="app/main/AIA.js"></script> | |
1258 | + <script src="app/main/Link.js"></script> | |
1259 | + <script src="content/scripts/js/custom/custom.js"></script> | |
1260 | + <script src="app/filters/ColorMatrixFilter.js"></script> | |
1261 | + <script src="app/utility/Matrix.js"></script> | |
1262 | + <script src="app/utility/Point.js"></script> | |
1263 | + <script src="app/utility/Rectangle.js"></script> | |
1264 | + <script src="app/utility/BitmapData.js"></script> | |
1265 | + <script src="app/utility/Paint.js"></script> | |
1266 | + <script src="app/controllers/DAController.js"></script> | |
1267 | + <script src="app/controllers/CIController.js"></script> | |
1268 | + <script src="app/controllers/CAController.js"></script> | |
1269 | + <script src="app/controllers/3dAController.js"></script> | |
1270 | + <script src="app/controllers/CurrBuildController.js"></script> | |
1271 | + <script src="app/controllers/AnatTestController.js"></script> | |
1272 | + <script src="app/controllers/LabExercController.js"></script> | |
1273 | + <script src="app/controllers/ADAMImgController.js"></script> | |
1274 | + <script src="app/controllers/AODController.js"></script> | |
1275 | + <script src="app/controllers/HomeController.js"></script> | |
1276 | + <script src="app/controllers/LinkController.js"></script> | |
1277 | + <script src="app/services/AuthenticationService.js"></script> | |
1278 | + <script src="app/services/DataService.js"></script> | |
1279 | + <script src="libs/jquery/jquery_plugin/jqueryui.js"></script> | |
1280 | + <script src="libs/jquery/jquery_plugin/color-picker/jquery.minicolors.min.js"></script> | |
1281 | + <!--<script src="libs/colorpicker/jquery.minicolors.min.js"></script>--> | |
1282 | + <!--<script src="libs/color-picker/jquery.minicolors.min.js"></script>--> | |
1283 | + | |
1284 | + <script src="libs/sketch.js"></script> | |
1285 | + | |
1286 | + <!--<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.js"></script>--> | |
1287 | + <script src="libs/html2canvas.js"></script> | |
1288 | + <script src="libs/FileSaver.js"></script> | |
1289 | + <!--<script type="text/javascript"> | |
1290 | + $(function () { | |
1291 | + $('#canvas').sketch(); | |
1292 | + }); | |
1293 | + </script>--> | |
1294 | + <script> | |
1303 | 1295 | $(function () { |
1304 | 1296 | $("#slider-range-min-2").slider({ |
1305 | 1297 | range: "min", |
... | ... | @@ -1382,8 +1374,8 @@ |
1382 | 1374 | $('[data-toggle="tooltip"]').tooltip(); |
1383 | 1375 | }) |
1384 | 1376 | }); |
1385 | - </script> | |
1386 | - <script> | |
1377 | + </script> | |
1378 | + <script> | |
1387 | 1379 | (function ($) { |
1388 | 1380 | $(window).load(function () { |
1389 | 1381 | $(".sidebar").mCustomScrollbar({ |
... | ... | @@ -1393,8 +1385,8 @@ |
1393 | 1385 | |
1394 | 1386 | }); |
1395 | 1387 | })(jQuery); |
1396 | - </script> | |
1397 | - <script> | |
1388 | + </script> | |
1389 | + <script> | |
1398 | 1390 | $(function () { |
1399 | 1391 | $(".modal").draggable(); |
1400 | 1392 | $(".annotationTollbar").draggable(); |
... | ... | @@ -1402,9 +1394,8 @@ |
1402 | 1394 | $("#annotationTextModal").draggable(); |
1403 | 1395 | $("#modal-settings").draggable(); |
1404 | 1396 | }); |
1405 | - </script> | |
1406 | - | |
1407 | - <script type="text/javascript"> | |
1397 | + </script> | |
1398 | + <script type="text/javascript"> | |
1408 | 1399 | $(function () { |
1409 | 1400 | var colpick = $('.demo').each(function () { |
1410 | 1401 | |
... | ... | @@ -1439,10 +1430,8 @@ |
1439 | 1430 | } |
1440 | 1431 | }); |
1441 | 1432 | }); |
1442 | - </script> | |
1443 | - | |
1444 | - | |
1445 | - <script type="text/javascript"> | |
1433 | + </script> | |
1434 | + <script type="text/javascript"> | |
1446 | 1435 | $(function () { |
1447 | 1436 | |
1448 | 1437 | $("#text-left").on('click', function () { |
... | ... | @@ -1543,10 +1532,8 @@ |
1543 | 1532 | |
1544 | 1533 | |
1545 | 1534 | |
1546 | - </script> | |
1547 | - | |
1548 | - | |
1549 | - <script> | |
1535 | + </script> | |
1536 | + <script> | |
1550 | 1537 | $(document).ready(function () { |
1551 | 1538 | // $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").addClass("ActiveDefaultColorAnnotation"); |
1552 | 1539 | $("#font-color .minicolors .minicolors-swatch .minicolors-swatch-color").css({ "background-color": "#000000" }); |
... | ... | @@ -1629,9 +1616,8 @@ |
1629 | 1616 | |
1630 | 1617 | |
1631 | 1618 | }); |
1632 | - </script> | |
1633 | - | |
1634 | - <script> | |
1619 | + </script> | |
1620 | + <script> | |
1635 | 1621 | $(function () { |
1636 | 1622 | $("#slider-range-min-3").slider({ |
1637 | 1623 | range: "min", |
... | ... | @@ -1647,9 +1633,8 @@ |
1647 | 1633 | |
1648 | 1634 | |
1649 | 1635 | }); |
1650 | - </script> | |
1651 | - | |
1652 | - <script> | |
1636 | + </script> | |
1637 | + <script> | |
1653 | 1638 | $(function () { |
1654 | 1639 | |
1655 | 1640 | |
... | ... | @@ -1675,11 +1660,8 @@ |
1675 | 1660 | |
1676 | 1661 | |
1677 | 1662 | |
1678 | - </script> | |
1679 | - | |
1680 | - | |
1681 | - | |
1682 | - <script> | |
1663 | + </script> | |
1664 | + <script> | |
1683 | 1665 | $(function () { |
1684 | 1666 | |
1685 | 1667 | |
... | ... | @@ -1715,9 +1697,9 @@ |
1715 | 1697 | }); |
1716 | 1698 | |
1717 | 1699 | }); |
1718 | - </script> | |
1719 | - <!-- Export Image Save Click--> | |
1720 | - <script> | |
1700 | + </script> | |
1701 | + <!-- Export Image Save Click--> | |
1702 | + <script> | |
1721 | 1703 | $(function () { |
1722 | 1704 | $("#btnSaveEI").click(function () { |
1723 | 1705 | html2canvas($("#canvasDiv"), { |
... | ... | @@ -1744,8 +1726,8 @@ |
1744 | 1726 | } |
1745 | 1727 | return new Blob([ab], { type: 'image/jpeg' }); |
1746 | 1728 | } |
1747 | - </script> | |
1748 | - <script> | |
1729 | + </script> | |
1730 | + <script> | |
1749 | 1731 | function ResizeImage(sizePercent) { |
1750 | 1732 | var autoWidth = 427; |
1751 | 1733 | var autoHeight = 547; |
... | ... | @@ -1787,6 +1769,28 @@ |
1787 | 1769 | } |
1788 | 1770 | } |
1789 | 1771 | } |
1790 | - </script> | |
1772 | + </script> | |
1773 | + <!--Reset password modal dialog--> | |
1774 | + <script> | |
1775 | + $(document).ready(function () { | |
1776 | + if (true) { | |
1777 | + var htmFileUrl = 'app/views/Home/resetPwd.html'; //<!--#resetpass" href="/app/views/Home/resetPwd.html"--> | |
1778 | + //$(".modal-content").load(htmFileUrl).dialog({ modal: true }); | |
1779 | + } | |
1780 | + }); | |
1781 | + | |
1782 | + //function UpdateUserPassword() | |
1783 | + //{ | |
1784 | + // alert('called from Index'); | |
1785 | + //} | |
1786 | + </script> | |
1787 | + <!-- Modal HTML --> | |
1788 | + <!--<div id="resetpass" class="modal fade" ng-show="isvisibleresetpass"> | |
1789 | + <div class="modal-dialog modal-sm"> | |
1790 | + <div class="modal-content">--> | |
1791 | + <!-- content will be loaded here from "resetpwd.html" file --> | |
1792 | + <!--</div> | |
1793 | + </div> | |
1794 | + </div>--> | |
1791 | 1795 | </body> |
1792 | 1796 | </html> |
1793 | 1797 | \ No newline at end of file | ... | ... |