PageRenderTime 69ms CodeModel.GetById 28ms RepoModel.GetById 0ms app.codeStats 1ms

/Stylaaa.Web/Views/Shared/_profile.cshtml

https://bitbucket.org/imperoitproject3/stylaaa2.0
Razor | 1111 lines | 1002 code | 97 blank | 12 comment | 123 complexity | 55948142d757a63fbf6e73d616b4a2a0 MD5 | raw file

Large files files are truncated, but you can click here to view the full file

  1. @using Stylaaa.Services
  2. @{
  3. /**/
  4. ViewBag.Title = "About";
  5. Layout = "~/Views/Shared/_Layout.cshtml";
  6. ViewUserDetail userdetail = new ViewUserDetail();
  7. if (ViewBag.UserProfile != null)
  8. {
  9. userdetail = ViewBag.UserProfile as ViewUserDetail;
  10. }
  11. string logeduserId = User.Identity.GetUserId();
  12. GeneralServices generalSer = new GeneralServices();
  13. bool IsFollow = generalSer.CheckFollowing(userdetail.Id, logeduserId);
  14. }
  15. @section metatags
  16. {
  17. @if (!User.Identity.IsAuthenticated)
  18. {
  19. <meta property="og:title" content="@userdetail.Role" />
  20. <meta property="og:description" content="@userdetail.Name" />
  21. <meta property="og:image" content="@GlobalConfig.UserImageUrl@userdetail.ProfileImageName" />
  22. }
  23. else
  24. {
  25. <title>@Html.Raw(Resource.metaAboutTitle)</title>
  26. <meta name="description" content="@Html.Raw(Resource.metaAboutname)">
  27. <meta name="Keywords" content="@Html.Raw(Resource.metaAboutKeyWord)">
  28. <meta property="og:url" content="@Html.Raw(Resource.metaAbouturl)" />
  29. }
  30. }
  31. <section class="middle-section-admin">
  32. <div class="table">
  33. <div class="left-admin mobile-none">
  34. <div class="ipad-block">
  35. <a href="#" title="" class="ipad-leftbar open-leftbar">+</a>
  36. <a href="#" title="" class="ipad-leftbar close-leftbar">-</a>
  37. </div>
  38. @{
  39. string strstyle = "";
  40. if (!String.IsNullOrWhiteSpace(userdetail.ProfileImageName))
  41. {
  42. strstyle = "background:url('" + userdetail.ProfileImageUrl + "') no-repeat center center;background-size: contain!important;";
  43. }
  44. <div class="ps-relative">
  45. <div class="profile-pic" id="user-profile-image" style="border:0px #fff; @strstyle">
  46. <div class="ps-table" style="border:0px #fff;">
  47. <div class="table" style="border:0px #fff;">
  48. <div class="table-cell" style="border:0px # fff;">
  49. @if (String.IsNullOrWhiteSpace(userdetail.ProfileImageName))
  50. {
  51. <img width="110" class="default-img" title="profile image" style="border:0px #fff;" src="@Url.Content("~/Content/images/profile-placeholder.png")">
  52. }
  53. </div>
  54. </div>
  55. </div>
  56. @if (User.Identity.IsAuthenticated && userdetail.Id == User.Identity.GetUserId())
  57. {
  58. <a href="#profile-pic-pp" title="" class="camera-img fancybox">
  59. <img class="upload-button" src="@Url.Content("~/Content/images/camera.svg")" alt="" />
  60. </a>
  61. }
  62. @if (userdetail.IsPremium)
  63. {
  64. <a href="#" title="" style="position: absolute;right: 20px; top: 20px; display: inline-block; padding: 8px; border-radius: 4px;" class="premium-user"><img src="@Url.Content("~/Content/images/premium-user.svg")" alt="" /></a>
  65. }
  66. <div class="profile-content" style="background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.7));">
  67. <h4>@(userdetail != null ? userdetail.Name : string.Empty)</h4>
  68. <a class="pf-link" href="#" title="@(userdetail != null ? userdetail.UserName : string.Empty)">@(userdetail != null ? userdetail.UserName : string.Empty)</a>
  69. </div>
  70. </div>
  71. <div class="left-admin-content">
  72. <P>@userdetail.AboutMe</P>
  73. </div>
  74. <div class="admin-menu">
  75. <input type="hidden" id="profileusername" value="@userdetail.UserName" />
  76. <ul>
  77. @if (userdetail.Role == Role.Stylist)
  78. {
  79. <li><a href="@Url.RouteUrl("Stylist", new { @username = userdetail.UserName, action = "Post" })" title="@Resource.post">@Resource.post</a></li>
  80. if (User.Identity.IsAuthenticated)
  81. {
  82. <li class="active"><a href="@Url.RouteUrl("Stylist", new { @username = userdetail.UserName, action = "About" })" title="@Resource.about">@Resource.about</a></li>
  83. if (userdetail.Id == User.Identity.GetUserId())
  84. {
  85. <li><a href="@Url.RouteUrl("Chat", new { @username = userdetail.UserName, action = "ChatJob" })" title="@Resource.Messages">@Resource.Messages</a></li>
  86. }
  87. <li><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "Following" })" title="@Resource.following">@Resource.following</a></li>
  88. <li><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "Followers" })" title="@Resource.followers">@Resource.followers</a></li>
  89. if (userdetail.Id == User.Identity.GetUserId())
  90. {
  91. <li id="setting"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "MyReview" })" title="@Resource.myReview">@Resource.myReview</a></li>
  92. <li><a href="@Url.RouteUrl("StylistChangePassword", new { username = userdetail.UserName, action = "UserEditPassword" })" title="@Resource.Settings">@Resource.Settings</a></li>
  93. <li><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "UpdateToPremium" })" title="@Resource.update @Resource.premium">@Resource.update @Resource.premium</a></li>
  94. <li><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "PaymentHistory" })" title="@Resource.paymenthistory @Resource.paymenthistory1">@Resource.paymenthistory @Resource.paymenthistory1</a></li>
  95. <li><a href="@Url.RouteUrl("Stylist", new { @username = userdetail.UserName, action = "JobCredit" })" title="Job Credit">Job Credits</a></li>
  96. }
  97. else
  98. {
  99. <li id="setting"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "StylistReview" })" title="@Resource.review">@Resource.review</a></li>
  100. }
  101. }
  102. else
  103. {
  104. <li class="active"><a href="@Url.RouteUrl("Stylist", new { @username = userdetail.UserName, action = "About" })" title="@Resource.AboutLink">@Resource.AboutLink</a></li>
  105. }
  106. }
  107. else
  108. {
  109. <li><a href="@Url.RouteUrl("User", new { @username = userdetail.UserName, action = "Post" })" title="@Resource.post">@Resource.post</a></li>
  110. if (userdetail.Id == User.Identity.GetUserId())
  111. {
  112. <li><a href="@Url.RouteUrl("User", new { @username = userdetail.UserName, action = "Job" })" title="@Resource.MenuMyJobs">@Resource.MenuMyJobs</a></li>
  113. }
  114. if (User.Identity.IsAuthenticated)
  115. {
  116. <li class="active"><a href="@Url.RouteUrl("User", new { @username = userdetail.UserName, action = "About" })" title=@Resource.about>@Resource.about</a></li>
  117. if (userdetail.Id == User.Identity.GetUserId())
  118. {
  119. <li><a href="@Url.RouteUrl("Chat", new { @username = userdetail.UserName, action = "ChatJob" })" title="@Resource.Messages">@Resource.Messages</a></li>
  120. }
  121. <li><a href="@Url.RouteUrl("User", new { username = userdetail.UserName, action = "Following" })" title=@Resource.following>@Resource.following</a></li>
  122. <li><a href="@Url.RouteUrl("User", new { username = userdetail.UserName, action = "Followers" })" title=@Resource.followers>@Resource.followers</a></li>
  123. if (userdetail.Id == User.Identity.GetUserId())
  124. {
  125. <li><a href="@Url.RouteUrl("UserChangePassword", new { username = userdetail.UserName, action = "UserEditPassword" })" title="@Resource.Settings">@Resource.Settings</a></li>
  126. }
  127. }
  128. else
  129. {
  130. <li class="active"><a href="@Url.RouteUrl("User", new { @username = userdetail.UserName, action = "About" })" title=@Resource.AboutLink>@Resource.AboutLink</a></li>
  131. }
  132. }
  133. </ul>
  134. </div>
  135. </div>
  136. }
  137. </div>
  138. <div class="right-admin">
  139. <div class="background-full">
  140. <div class="background-img">
  141. @if (string.IsNullOrEmpty(userdetail.CoverPicName))
  142. {
  143. <div class="bacround-ps-img mobile-none" style="background:url('@Url.Content("~/Content/images/default-coverpic.jpg")') no-repeat center center; background-color: #f5f5f5;"></div>
  144. /*background-size: contain!important;*/
  145. <img class="mobile-block background-img-pic" title="background image" src="@Url.Content("~/Content/images/default-coverpic.jpg")" alt="" />
  146. }
  147. else
  148. {
  149. <div class="bacround-ps-img mobile-none" style="background:url('@userdetail.CoverPicUrl') no-repeat center center;"></div>
  150. /*background-size: contain!important;*/
  151. <img class="mobile-block background-img-pic" title="background image" src="@(GlobalConfig.UserCoverPicUrl + userdetail.CoverPicName)" alt="" />
  152. }
  153. @if (User.Identity.IsAuthenticated && userdetail.Id == User.Identity.GetUserId())
  154. {
  155. <a href="#change-cover-photo" title="" class="camera-img-second fancybox">
  156. <img src="@Url.Content("~/Content/images/camera.svg")" alt="" />
  157. <span>@Resource.changeCoverPicText</span>
  158. </a>
  159. }
  160. <div class="responsive-box">
  161. <div class="profile-pic mobile-block">
  162. <div class="mobile-pf">
  163. <div class="ps-table" style="border: 0px #fff !important;">
  164. <div class="table" id="mobile-user-profile" style="border: 0px #fff !important;">
  165. @if (String.IsNullOrWhiteSpace(userdetail.ProfileImageName))
  166. {
  167. <div class="table-cell" style="border: 0px #fff !important;">
  168. <img width="80" style="border:0px #fff;" title="profile image" class="default-img" src="@Url.Content("~/Content/images/profile-placeholder.png")">
  169. </div>
  170. }
  171. else
  172. {
  173. <div class="table-cell" style="border:0px #fff !important; background:url('@userdetail.ProfileImageUrl') no-repeat center center;background-size: contain!important;">
  174. </div>
  175. }
  176. </div>
  177. </div>
  178. @*<img class="profile-pic-img" src="" alt="" />*@
  179. @if (User.Identity.IsAuthenticated && userdetail.Id == User.Identity.GetUserId())
  180. {
  181. <a href="#profile-pic-pp" title="" class="camera-img fancybox">
  182. <img class="upload-button" src="@Url.Content("~/Content/images/camera.svg")" alt="" />
  183. </a>
  184. }
  185. @if (userdetail.IsPremium)
  186. {
  187. <a href="#" title="" style="position: absolute;right: 6px; top:6px;padding:4px;max-width:24px;" class="premium-user"><img src="@Url.Content("~/Content/images/premium-user.svg")" alt="" /></a>
  188. }
  189. </div>
  190. <div class="profile-content mobile-block">
  191. <h4>@(userdetail.Name != null ? userdetail.Name : string.Empty)</h4>
  192. <a class="pf-link" href="#" title="@userdetail.UserName">@(userdetail.UserName != null ? userdetail.UserName : string.Empty)</a>
  193. </div>
  194. </div>
  195. <div class="bottom-bar container">
  196. <div class="table">
  197. <div class="left-bttom">
  198. <ul>
  199. @if (User.Identity.IsAuthenticated)
  200. {
  201. if (userdetail.Role == Role.Stylist)
  202. {
  203. <li><a href="@Url.RouteUrl("Stylist", new { @username = userdetail.UserName, action = "Post" })" title="">@userdetail.PostCount <span>@Resource.post</span></a></li>
  204. <li><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "Following" })" title="">@userdetail.FollowingCount <span>@Resource.following</span></a></li>
  205. <li>
  206. <a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "Followers" })" title="">
  207. @userdetail.FollowerCount
  208. @if (userdetail.FollowerCount > 1)
  209. {
  210. <span> @Resource.followers</span>
  211. }
  212. else
  213. {
  214. <span>@Resource.followers</span>
  215. }
  216. </a>
  217. </li>
  218. }
  219. else
  220. {
  221. <li><a href="@Url.RouteUrl("User", new { @username = userdetail.UserName, action = "Post" })" title="">@userdetail.PostCount <span>@Resource.post</span></a></li>
  222. <li><a href="@Url.RouteUrl("User", new { username = userdetail.UserName, action = "Following" })" title="">@userdetail.FollowingCount <span>@Resource.following</span></a></li>
  223. <li>
  224. <a href="@Url.RouteUrl("User", new { username = userdetail.UserName, action = "Followers" })" title="">
  225. @userdetail.FollowerCount
  226. @if (userdetail.FollowerCount > 1)
  227. {
  228. <span> @Resource.followers</span>
  229. }
  230. else
  231. {
  232. <span> @Resource.followers</span>
  233. }
  234. </a>
  235. </li>
  236. }
  237. }
  238. </ul>
  239. </div>
  240. @if (User.Identity.IsAuthenticated)
  241. {
  242. if (userdetail.Id != User.Identity.GetUserId())
  243. {
  244. <div class="right-bottom mobile-none">
  245. <a href="#send-message" title="@Resource.SendMessage" class="share-profile fancybox">@Resource.SendMessage</a>
  246. </div>
  247. <div class="right-bottom mobile-none">
  248. <a href="javascript:;" data-id="@userdetail.Id" title="@Resource.ShareProfileBtn" class="share-profile buttonfollow">@(IsFollow == true ? Resource.following : Resource.follow)</a>
  249. </div>
  250. }
  251. <div class="right-bottom mobile-none">
  252. <a href="#share-profile" title="@Resource.ShareProfileBtn" class="share-profile fancybox">@Resource.ShareProfileBtn </a>
  253. </div>
  254. }
  255. </div>
  256. </div>
  257. <div class="left-admin-content mobile-block">
  258. <P>@userdetail.AboutMe</P>
  259. @if (User.Identity.IsAuthenticated)
  260. {
  261. <div class="right-bottom mobile-block">
  262. @if (userdetail.Id != User.Identity.GetUserId())
  263. {
  264. <a href="#send-message" title="@Resource.SendMessage" class="share-profile fancybox">@Resource.SendMessage </a>
  265. <a href="javaScript:;" data-id="@userdetail.Id" title="@Resource.SendMessage" class="share-profile buttonfollow">@(IsFollow == true ? Resource.following : Resource.follow)</a>
  266. }
  267. <a href="#share-profile" title="Share Profile" class="share-profile fancybox">@Resource.ShareProfileBtn</a>
  268. </div>
  269. }
  270. </div>
  271. </div>
  272. </div>
  273. </div>
  274. <div class="mobile-block">
  275. <div class="admin-menu-mobile">
  276. <div class="inner-slide">
  277. @if (userdetail.Role == Role.Stylist)
  278. {
  279. <div class="item"><a href="@Url.RouteUrl("Stylist", new { @username = userdetail.UserName, action = "Post" })" title="@Resource.post">@Resource.post</a></div>
  280. if (User.Identity.IsAuthenticated)
  281. {
  282. <div class="item"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "About" })" title="@Resource.about">@Resource.about</a></div>
  283. if (userdetail.Id == User.Identity.GetUserId())
  284. {
  285. <div class="item">
  286. <a href="@Url.RouteUrl("Chat", new { @username = userdetail.UserName, action = "ChatJob" })" title="@Resource.Messages">@Resource.Messages</a>
  287. </div>
  288. }
  289. <div class="item"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "Following" })" title=@Resource.following>@Resource.following</a></div>
  290. <div class="item"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "Followers" })" title=@Resource.followers>@Resource.followers</a></div>
  291. if (userdetail.Id == User.Identity.GetUserId())
  292. {
  293. <div class="item"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "MyReview" })" title=@Resource.myReview>@Resource.myReview</a></div>
  294. <div class="item"><a href="@Url.RouteUrl("StylistChangePassword", new { username = User.Identity.GetUserName(), action = "UserEditPassword" })" title="@Resource.Settings">@Resource.Settings</a></div>
  295. <div class="item"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "UpdateToPremium" })" title=@Resource.updateToPremiumText>@Resource.update<br />@Resource.premium</a></div>
  296. <div class="item"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "PaymentHistory" })" title=@Resource.paymenthistory @Resource.paymenthistory1>@Resource.paymenthistory<br />@Resource.paymenthistory1</a></div>
  297. <div class="item"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "JobCredit" })" title="JobCredit" @Resource.paymenthistory1>Job Credits</a></div>
  298. }
  299. else
  300. {
  301. <div class="item"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "StylistReview" })" title=@Resource.review>@Resource.review</a></div>
  302. }
  303. }
  304. else
  305. {
  306. <div class="item"><a href="@Url.RouteUrl("Stylist", new { username = userdetail.UserName, action = "About" })" title="@Resource.AboutLink">@Resource.AboutLink</a></div>
  307. }
  308. }
  309. else
  310. {
  311. <div class="item"><a href="@Url.RouteUrl("User", new { @username = userdetail.UserName, action = "Post" })" title=@Resource.post>@Resource.post</a></div>
  312. if (userdetail.Id == User.Identity.GetUserId())
  313. {
  314. <div class="item"><a href="@Url.RouteUrl("User", new { @username = userdetail.UserName, action = "Job" })" title="@Resource.MenuMyJobs">@Resource.MenuMyJobs</a></div>
  315. }
  316. if (User.Identity.IsAuthenticated)
  317. {
  318. <div class="item"><a class="active" href="@Url.RouteUrl("User", new { username = userdetail.UserName, action = "About" })" title=@Resource.about>@Resource.about</a></div>
  319. if (userdetail.Id == User.Identity.GetUserId())
  320. {
  321. <div class="item"><a href="@Url.RouteUrl("Chat", new { @username = userdetail.UserName, action = "MobileJobChat" })" title="@Resource.Messages">@Resource.Messages</a></div>
  322. }
  323. <div class="item"><a href="@Url.RouteUrl("User", new { username = userdetail.UserName, action = "Following" })" title=@Resource.following>@Resource.following</a></div>
  324. @*<div class="item"><a href="@Url.RouteUrl("User", new { username = userdetail.UserName, action = "Following" })" title="Following">Following</a></div>*@
  325. <div class="item"><a href="@Url.RouteUrl("User", new { username = userdetail.UserName, action = "Followers" })" title=@Resource.followers>@Resource.followers</a></div>
  326. if (userdetail.Id == User.Identity.GetUserId())
  327. {
  328. <div class="item"><a href="@Url.RouteUrl("UserChangePassword", new { username = userdetail.UserName, action = "UserEditPassword" })" title="@Resource.Settings">@Resource.Settings</a></div>
  329. }
  330. }
  331. else
  332. {
  333. <div class="item"><a class="active" href="@Url.RouteUrl("User", new { username = userdetail.UserName, action = "About" })" title=@Resource.AboutLink>@Resource.AboutLink</a></div>
  334. }
  335. }
  336. </div>
  337. </div>
  338. </div>
  339. @RenderBody()
  340. </div>
  341. </div>
  342. </section>
  343. <!-- change cover photo popup -->
  344. <div class="popup-box">
  345. <div id="change-cover-photo" class="popup-max about-pp">
  346. <div class="popup-had">
  347. <h4>@Resource.changeCoverPicText</h4>
  348. <a href="#" title="" class="cancel-pp" data-fancybox-close="true"><img src="@Url.Content("~/Content/images/close.svg")" alt="" /></a>
  349. </div>
  350. <div class="tabs-full-popup">
  351. <div class="upload-image">
  352. <div id="image-container">
  353. <canvas id="canvas" class="canvas img-upload-max"></canvas>
  354. </div>
  355. <div><p>@Resource.ChangeCoverpicImageValid 990X480</p></div>
  356. <div class="ps-upload hide">
  357. <div class="bt-crop">
  358. <input type="button" id="btnLeftRotate" value="@Resource.Crop" title="rotate left" onclick="rotateLeft()" />
  359. <img id="btnCrop" src="@Url.Content("~/Content/images/rotate-left.svg")" title="rotate left" alt="rotate left" style="width: 40px;height: 40px;" />
  360. </div>
  361. <div class="bt-crop">
  362. <input type="button" id="btnRightRotate" value="@Resource.Crop" title="rotate right" onclick="rotateRight()" />
  363. <img id="btnCrop" src="@Url.Content("~/Content/images/rotate-right.svg")" title="rotate right" alt="rotate right" style="width: 40px;height: 40px;" />
  364. </div>
  365. <div class="bt-crop">
  366. <input type="button" title="@Resource.Save" id="btnCrop-CoverPic" value="@Resource.Crop" />
  367. <img src="@Url.Content("~/Content/images/crop-right.svg")" alt="" />
  368. </div>
  369. <div class="bt-crop-rs">
  370. <input type="button" title="@Resource.Restore" id="btnRestore-CoverPic" value="@Resource.Restore" />
  371. <img src="@Url.Content("~/Content/images/crop-cancel.svg")" alt="" />
  372. </div>
  373. </div>
  374. </div>
  375. <div class="upload-button">
  376. <a href="#" title=@Resource.Upload @Resource.Coverphoto class="btn-yellow">
  377. @Resource.ChangeCoverpicBtn
  378. <input class="file-input" id="file-input-coverpic" type="file">
  379. </a>
  380. </div>
  381. <button class="btn save hide">@Resource.Save</button>
  382. </div>
  383. </div>
  384. </div>
  385. <!-- profile-pic photo popup -->
  386. <div class="popup-box">
  387. <div id="profile-pic-pp" class="popup-max about-pp">
  388. <div class="popup-had">
  389. <h4>@Resource.editprofileChangePic</h4>
  390. <a href="#" title="" class="cancel-pp" data-fancybox-close="true"><img src="@Url.Content("~/Content/images/close.svg")" alt="" /></a>
  391. </div>
  392. <div class="tabs-full-popup">
  393. <div class="upload-image">
  394. <div id="image-container">
  395. <canvas id="profile-canvas" class="canvas img-upload-max"></canvas>
  396. </div>
  397. <div class="ps-upload hide">
  398. <div class="bt-crop">
  399. <input type="button" id="btnLeftRotate" value="@Resource.Crop" title="rotate left" onclick="rotateLeftProfilePic()" style="width: 40px;height: 40px;" />
  400. <img id="btnCrop" src="@Url.Content("~/Content/images/rotate-left.svg")" title="rotate left" alt="rotate left" style="width: 40px;height: 40px;" />
  401. </div>
  402. <div class="bt-crop">
  403. <input type="button" id="btnRightRotate" value="@Resource.Crop" title="rotate right" onclick="rotateRightProfilePic()" />
  404. <img id="btnCrop" src="@Url.Content("~/Content/images/rotate-right.svg")" title="rotate right" alt="rotate right" style="width: 40px;height: 40px;" />
  405. </div>
  406. <div class="bt-crop">
  407. <input type="button" title="@Resource.Crop" id="btnCrop-ProfilePic" value="@Resource.Crop" />
  408. <img src="@Url.Content("~/Content/images/crop-right.svg")" alt="" />
  409. </div>
  410. <div class="bt-crop-rs">
  411. <input type="button" title="@Resource.Restore" id="btnRestore-ProfilePic" value="@Resource.Restore" />
  412. <img src="@Url.Content("~/Content/images/crop-cancel.svg")" alt="" />
  413. </div>
  414. </div>
  415. <div><p>@Resource.ChangeCoverpicImageValid 350X350</p></div>
  416. </div>
  417. <div class="upload-button">
  418. <a href="#" title="Upload Photo" class="btn-yellow">
  419. @Resource.ChangeProfileBtn
  420. <input class="file-input-profile-pic" id="file-input-profile-pic" type="file">
  421. </a>
  422. </div>
  423. <button class="btn save hide">@Resource.Save</button>
  424. </div>
  425. </div>
  426. </div>
  427. <!-- share profile popup -->
  428. <div class="popup-box">
  429. <div id="share-profile" class="popup-max">
  430. <div class="popup-had">
  431. <h4>@Resource.ShareProfileBtn</h4>
  432. <P>@Resource.ShareProfileText</P>
  433. <a href="#" title="" class="cancel-pp" data-fancybox-close="true"><img src="@Url.Content("~/Content/images/close.svg")" alt="" /></a>
  434. </div>
  435. @*<form>
  436. *@
  437. <div class="popup-middle" style="min-height: auto !important;">
  438. <div class="field-rs">
  439. <label>@Resource.ShareProfileBtn</label>
  440. <div class="copy-link">
  441. <div class="table">
  442. <div class="table-cell">
  443. <input type="text" id="share-profile-link" value="@userdetail.profileUrl">
  444. </div>
  445. <div class="table-cell">
  446. <button class="copy-button" type="button">@Resource.copy</button>
  447. </div>
  448. </div>
  449. </div>
  450. </div>
  451. </div>
  452. <div class="popup-footer">
  453. <button id="profile-share-button" style="float:left;" class="button share-button">@Resource.Share</button>
  454. <a href="javascript:void(0);" title="@Resource.cancel" data-fancybox-close="true" class="button cancel-button">@Resource.forgotpasswordCancel</a>
  455. </div>
  456. @*
  457. </form>*@
  458. </div>
  459. </div>
  460. <!-- share-profile popup-->
  461. <div class="popup-box">
  462. <div id="share-post" class="popup-max">
  463. <div class="popup-had">
  464. <h4>@Resource.profile @Resource.Share.ToLower()</h4>
  465. <a href="#" title="" class="cancel-pp" data-fancybox-close="true"><img src="~/Content/images/close.svg" alt="" /></a>
  466. </div>
  467. <div class="popup-middle" style="min-height: auto !important;">
  468. <div class="share-mrg">
  469. <div class="addthis_toolbox addthis_inline_share_toolbox" addthis:url="THE URL" addthis:title="THE TITLE" addthis:description="THE DESCRIPTION" addthis:media="THE IMAGE"></div>
  470. </div>
  471. </div>
  472. </div>
  473. </div>
  474. <!-- send message popup -->
  475. <div class="popup-box">
  476. <div id="send-message" class="popup-max">
  477. <div class="popup-had">
  478. <h4>@Resource.SendMessage</h4>
  479. <a href="#" title="" class="cancel-pp" data-fancybox-close="true"><img src="@Url.Content("~/Content/images/close.svg")" alt="" /></a>
  480. </div>
  481. <div class="popup-middle" style="min-height: 100px !important;">
  482. <div class="field-rs">
  483. @*<label>@Resource.message</label>*@
  484. <textarea id="ReportPostReasonText" name="ReportPostReasonText" placeholder="@Resource.typeMsgHere"></textarea>
  485. </div>
  486. </div>
  487. <div class="popup-footer single-btn">
  488. <a href="javascript:;" id="sendtextId" data-sid="@userdetail.Id" title=@Resource.send class="button share-button">@Resource.send</a>
  489. </div>
  490. </div>
  491. </div>
  492. @section Partialscripts{
  493. @Scripts.Render("~/scripts/profile")
  494. <script>
  495. $(".buttonfollow").on('click', function () {
  496. var sid = $(this).data('id');
  497. var control = $(this);
  498. $.post('@Url.Action("FollowTransaction", "Home")', { StylishId: sid })
  499. .done(function (result) {
  500. if (result) {
  501. if (result == "Follow" || result == "Folgen") {
  502. $(control).text(result);
  503. //$(control).addClass("btn-profileFollow");
  504. //$(control).removeClass("share-profile");
  505. window.location.reload();
  506. }
  507. else if (result == "Following" || result == "Abonniert") {
  508. $(control).text(result);
  509. //$(control).removeClass("share-profile");
  510. //$(control).addClass("btn-profileFollow");
  511. window.location.reload();
  512. }
  513. else {
  514. toastr.error(result.Message, '@Resource.loginMust');
  515. }
  516. }
  517. else
  518. toastr.error(result.Message,'@Resource.loginMust');
  519. }).fail(function (error) {
  520. });
  521. });
  522. $(document).ready(function () {
  523. if ($("#RecentPostPageIndex").val() == $("#RecentPostPageCount").val()) {
  524. $(".view-all").hide();
  525. }
  526. });
  527. var hrefUrl = "https://www.stylaaa.com/?hashtag=dfg";
  528. var hrefMediaUrl = "https://www.stylaaa.com/Files/PostImages/254291db-9d23-4a7a-a10f-12d07b1a0820_XmfC4HPr7E-4f1KhBjFTxg_12062018113247.jpeg";
  529. var addthis_share = {
  530. url: hrefUrl,
  531. title: "THE TITLE",
  532. description: "THE DESCRIPTION",
  533. media: hrefMediaUrl
  534. };
  535. var addthis_config = {
  536. data_track_clickback: true
  537. };
  538. $("#profile-share-button").click(function () {
  539. $.fancybox.close();
  540. addthis.update('share', 'url', '@userdetail.profileUrl');
  541. addthis.url = '@userdetail.profileUrl';
  542. addthis.update('share', 'title', "stylaaa profile title");
  543. addthis.title = "stylaaa profile title";
  544. addthis.update('share', 'description', "THE DESCRIPTION");
  545. addthis.description = "THE DESCRIPTION";
  546. addthis.update('share', 'media', '@GlobalConfig.UserImageUrl@userdetail.ProfileImageName');
  547. addthis.media = '@GlobalConfig.UserImageUrl@userdetail.ProfileImageName';
  548. addthis.toolbox(".addthis_toolbox");
  549. $.fancybox.open({
  550. src: '#share-post',
  551. type: 'inline',
  552. modal: true,
  553. helpers: {
  554. overlay: { closeClick: false }
  555. }
  556. });
  557. $(".addthis_toolbox").attr("data-url", '@userdetail.profileUrl');
  558. $(".addthis_toolbox").attr("data-media", '@GlobalConfig.UserImageUrl@userdetail.ProfileImageName');
  559. });
  560. $('#btnCrop-ProfilePic').click(function () {
  561. // Get a string base 64 data url
  562. //var croppedImageDataURL = canvas2.cropper('getCroppedCanvas').toDataURL("image/png");
  563. //$result.append($('.profile-pic-img').attr('src', croppedImageDataURL));
  564. //$result.append($('.profile-pic').css('background', 'url(' + croppedImageDataURL + ') no-repeat center center'));
  565. //$('.profile-pic').addClass('active');
  566. //$('.ps-table ').addClass('hide');
  567. $.fancybox.close();
  568. displayWhiteOverlay();
  569. $("#profile-pic-pp .ps-upload").addClass("hide");
  570. var cropcanvas = canvas2.cropper('getCroppedCanvas');
  571. var croppng = cropcanvas.toDataURL("image/png");
  572. // Create FormData object
  573. var formData = new FormData();
  574. formData.append('pngimageData', croppng);
  575. formData.append('filename', 'test.png');
  576. var url = '@Url.Action("UpdateProfileImage", "Stylist")';
  577. $.ajax({
  578. url: url,
  579. type: "POST",
  580. contentType: false, // Not to set any content header
  581. processData: false, // Not to process data
  582. data: formData,
  583. success: function (result) {
  584. removeWhiteOverlay();
  585. if (result.Result != "1" || result.Result != "0") {
  586. $('#user-profile-image').attr('style', 'background: url(' + result.Message + ') no-repeat center center;background-size: contain!important;');/* background-size: contain!important;*/
  587. $('#mobile-user-profile .table-cell').attr('style', 'background: url(' + result.Message + ') no-repeat center center; background-size: contain!important;'); /*background-size: contain!important;*/
  588. //$('#mobile-user-profile .table-cell img').attr('src', result.Message);
  589. $('#profile-pic-pp .profile-pic').addClass('active');
  590. $('#profile-pic-pp .ps-table').addClass('hide');
  591. $("#profile-pic-pp .ps-upload").removeClass("hide");
  592. $(".default-img").remove();
  593. ShowToastr('success', '@Resource.profilepicUploadsuccess', '');
  594. }
  595. },
  596. error: function (err) {
  597. removeWhiteOverlay();
  598. ShowToastr('error', "fail::" + err.statusText, '');
  599. }
  600. });
  601. });
  602. $('#btnCrop-CoverPic').click(function () {
  603. // // Get a string base 64 data url
  604. // var croppedImageDataURL = canvas.cropper('getCroppedCanvas').toDataURL("image/png");
  605. // $result.append($('.background-img-pic').attr('src', croppedImageDataURL));
  606. // $result.append($('.bacround-ps-img').css('background', 'url(' + croppedImageDataURL + ') no-repeat center center'));
  607. $.fancybox.close();
  608. displayWhiteOverlay();
  609. $("#change-cover-photo .ps-upload").addClass("hide");
  610. var cropcanvas = canvas.cropper('getCroppedCanvas');
  611. var croppng = cropcanvas.toDataURL("image/png");
  612. // Create FormData object
  613. var formData = new FormData();
  614. formData.append('pngimageData', croppng);
  615. formData.append('filename', 'test.png');
  616. var url = '@Url.Action("UpdateCoverPic", "Stylist")';
  617. $.ajax({
  618. url: url,
  619. type: "POST",
  620. contentType: false, // Not to set any content header
  621. processData: false, // Not to process data
  622. data: formData,
  623. success: function (result) {
  624. removeWhiteOverlay();
  625. if (result.Result != "1" || result.Result != "0") {
  626. $('.background-img-pic').attr('src', result.Message);
  627. $('.bacround-ps-img').attr('style', 'background: url(' + result.Message + ') no-repeat center center;'); /*background-size: contain!important;*/
  628. $("#change-cover-photo .ps-upload").removeClass("hide");
  629. ShowToastr('success', '@Resource.CoverpicUploadSuccess', '');
  630. }
  631. },
  632. error: function (err) {
  633. removeWhiteOverlay();
  634. ShowToastr('error', "fail::" + err.statusText, '');
  635. }
  636. });
  637. });
  638. $(window).bind("load", function () {
  639. var strUserName = $("#UserName").val();
  640. if (strUserName != null && strUserName != undefined && strUserName != '') {
  641. var url = window.location.pathname;
  642. var arrayurl = url.split("/");
  643. if (arrayurl[arrayurl.length - 1] != "About") {
  644. url = url.replace(arrayurl[arrayurl.length - 1], strUserName);
  645. }
  646. else {
  647. url = url.replace(arrayurl[arrayurl.length - 2], strUserName);
  648. }
  649. history.pushState(null, null, url);
  650. //$("#lnkmyprofile").attr("href", url);
  651. }
  652. });
  653. $(".stylist_username").change(function (e) {
  654. var strUserName = $(this).val();
  655. if (strUserName == null || strUserName == undefined || strUserName == "") {
  656. $(".stylist_username").focus();
  657. $(".stylist_username").attr("style", "border: 1px solid #ff0000;");
  658. ShowToastr('error', '@Resource.UsernameFieldIsRequired', '');
  659. }
  660. else {
  661. var strurl = '@Url.RouteUrl("Stylist", new { username = User.Identity.GetUserName(), action = "IsUserExists" })';
  662. var formdata = new FormData();
  663. formdata.append("strUserName", strUserName);
  664. $.ajax({
  665. url: strurl,
  666. type: "Post",
  667. data: formdata,
  668. contentType: false, // Not to set any content header
  669. processData: false, // Not to process data
  670. success: function (result) {
  671. if (result == true) {
  672. $(".stylist_username").val("");
  673. $(".stylist_username").focus();
  674. $(".stylist_username").attr("style", "border: 1px solid #ff0000;");
  675. ShowToastr('error', '@Resource.usernameAlreadyinUse', '');
  676. }
  677. else {
  678. ShowToastr('success', 'This username is available', '');
  679. $(".stylist_username").attr("style", "border: 1px solid #dcdcdc;");
  680. }
  681. },
  682. error: function (err) {
  683. ShowToastr('error', "fail::" + err.statusText, '');
  684. }
  685. });
  686. }
  687. });
  688. $(".user_username").change(function (e) {
  689. var strUserName = $(this).val();
  690. if (strUserName == null || strUserName == undefined || strUserName == "") {
  691. $(".user_username").focus();
  692. $(".user_username").attr("style", "border: 1px solid #ff0000;");
  693. ShowToastr('error', '@Resource.UsernameFieldIsRequired', '');
  694. }
  695. {
  696. var strurl = '@Url.RouteUrl("Stylist", new { username = User.Identity.GetUserName(), action = "IsUserExists" })';
  697. var formdata = new FormData();
  698. formdata.append("strUserName", strUserName);
  699. $.ajax({
  700. url: strurl,
  701. type: "Post",
  702. data: formdata,
  703. contentType: false, // Not to set any content header
  704. processData: false, // Not to process data
  705. success: function (result) {
  706. if (result == true) {
  707. $(".user_username").val("");
  708. $(".user_username").focus();
  709. $(".user_username").attr("style", "border: 1px solid #ff0000;");
  710. ShowToastr('error', '@Resource.usernameAlreadyinUse', '');
  711. }
  712. else {
  713. ShowToastr('success', 'This username is available', '');
  714. $(".user_username").attr("style", "border: 1px solid #dcdcdc;");
  715. }
  716. },
  717. error: function (err) {
  718. ShowToastr('error', "fail::" + err.statusText, '');
  719. }
  720. });
  721. }
  722. });
  723. var demsg = 'it will be deleted after 30 days from the system, during this time you can login and activate your account again';
  724. var deactivemsg = 'Yes Deactivate it!';
  725. if (varLang == 'de') {
  726. demsg = 'Dein Konto wird innerhalb von 30 Tagen gelöscht.In dieser Zeit kannst du dich wieder einloggen und dein Konto aktivieren';
  727. var deactivemsg = 'Bestätigen!';
  728. }
  729. function fnOpenDeactiveAccount(url, logouturl) {
  730. swal({
  731. title: '@Html.Raw(Resource.SureDeleteAccountText)',
  732. text: demsg,
  733. type: "warning",
  734. showCancelButton: true,
  735. confirmButtonClass: "btn-danger",
  736. confirmButtonText: deactivemsg,
  737. closeOnConfirm: false,
  738. allowOutsideClick: false
  739. },
  740. function () {
  741. $.ajax({
  742. type: 'GET',
  743. url: url,
  744. cache: false,
  745. contentType: false,
  746. processData: false,
  747. success: function (result) {
  748. if (result.Status == "1") {
  749. //swal(result.Message)
  750. ShowToastr('success', result.Message, '');
  751. setTimeout(function () {
  752. var pathname = window.location.pathname;
  753. var fullurl = window.location.href;
  754. logouturl = fullurl.replace(pathname, logouturl);
  755. window.location.replace(logouturl);
  756. }, 1500);
  757. }
  758. else {
  759. ShowToastr('error', result.Message, '');
  760. }
  761. swal.close();
  762. },
  763. error: function (err) {
  764. ShowToastr('error', "err::" + err, '');
  765. }
  766. });
  767. });
  768. }
  769. var deletepostMsg = 'Are you sure to delete this Post?';
  770. var deletepostmessage = 'Yes delete it';
  771. var dltmsg = "Deleted";
  772. if (varLang == 'de') {
  773. deletepostMsg = 'Willst du diesen Post löschen?';
  774. deletepostmessage = 'löschen';
  775. dltmsg = "löschen";
  776. }
  777. function deleteProfilePost(url) {
  778. //displayOverlay();
  779. swal({
  780. title: deletepostMsg,
  781. //text: "Your will not be able to recover this post!",
  782. type: "warning",
  783. showCancelButton: true,
  784. confirmButtonClass: "btn-danger",
  785. confirmButtonText: deletepostmessage,
  786. closeOnConfirm: false,
  787. allowOutsideClick: false,
  788. },
  789. function () {
  790. $.ajax({
  791. type: 'POST',
  792. url: url,
  793. cache: false,
  794. contentType: false,
  795. processData: false,
  796. success: function (result) {
  797. $.fancybox.close();
  798. removeWhiteOverlay();
  799. //swal("Deleted!", "Post has been De…

Large files files are truncated, but you can click here to view the full file