PageRenderTime 45ms CodeModel.GetById 17ms RepoModel.GetById 1ms app.codeStats 0ms

/mojoPortal.Data.MySql/dbUserPage.cs

http://mojoportal.codeplex.com
C# | 279 lines | 201 code | 65 blank | 13 comment | 2 complexity | afbba4193c53dd915c4e3985ef0db69d MD5 | raw file
Possible License(s): CPL-1.0, CC-BY-SA-3.0, GPL-2.0, LGPL-2.1, MPL-2.0-no-copyleft-exception, BSD-3-Clause, Apache-2.0
  1. /// Author: Joe Audette
  2. /// Created: 2007-11-03
  3. /// Last Modified: 2012-07-20
  4. ///
  5. /// The use and distribution terms for this software are covered by the
  6. /// Common Public License 1.0 (http://opensource.org/licenses/cpl.php)
  7. /// which can be found in the file CPL.TXT at the root of this distribution.
  8. /// By using this software in any fashion, you are agreeing to be bound by
  9. /// the terms of this license.
  10. ///
  11. /// You must not remove this notice, or any other, from this software.
  12. ///
  13. /// Note moved into separate class file from dbPortal 2007-11-03
  14. using System;
  15. using System.Text;
  16. using System.Data;
  17. using System.Data.Common;
  18. using System.Configuration;
  19. using System.Globalization;
  20. using System.IO;
  21. using MySql.Data.MySqlClient;
  22. namespace mojoPortal.Data
  23. {
  24. public static class DBUserPage
  25. {
  26. public static int AddUserPage(
  27. Guid userPageId,
  28. Guid siteGuid,
  29. int siteId,
  30. Guid userGuid,
  31. string pageName,
  32. string pagePath,
  33. int pageOrder)
  34. {
  35. StringBuilder sqlCommand = new StringBuilder();
  36. sqlCommand.Append("INSERT INTO mp_UserPages ");
  37. sqlCommand.Append("( ");
  38. sqlCommand.Append("UserPageID, ");
  39. sqlCommand.Append("SiteGuid, ");
  40. sqlCommand.Append("SiteID, ");
  41. sqlCommand.Append("UserGuid, ");
  42. sqlCommand.Append("PageName, ");
  43. sqlCommand.Append("PagePath, ");
  44. sqlCommand.Append("PageOrder ");
  45. sqlCommand.Append(")");
  46. sqlCommand.Append(" VALUES (");
  47. sqlCommand.Append("?UserPageID, ");
  48. sqlCommand.Append("?SiteGuid, ");
  49. sqlCommand.Append("?SiteID, ");
  50. sqlCommand.Append("?UserGuid, ");
  51. sqlCommand.Append("?PageName, ");
  52. sqlCommand.Append("?PagePath, ");
  53. sqlCommand.Append("?PageOrder ");
  54. sqlCommand.Append(");");
  55. MySqlParameter[] arParams = new MySqlParameter[7];
  56. arParams[0] = new MySqlParameter("?UserPageID", MySqlDbType.VarChar, 36);
  57. arParams[0].Direction = ParameterDirection.Input;
  58. arParams[0].Value = userPageId.ToString();
  59. arParams[1] = new MySqlParameter("?SiteID", MySqlDbType.Int32);
  60. arParams[1].Direction = ParameterDirection.Input;
  61. arParams[1].Value = siteId;
  62. arParams[2] = new MySqlParameter("?UserGuid", MySqlDbType.VarChar, 36);
  63. arParams[2].Direction = ParameterDirection.Input;
  64. arParams[2].Value = userGuid.ToString();
  65. arParams[3] = new MySqlParameter("?PageName", MySqlDbType.VarChar, 255);
  66. arParams[3].Direction = ParameterDirection.Input;
  67. arParams[3].Value = pageName;
  68. arParams[4] = new MySqlParameter("?PagePath", MySqlDbType.VarChar, 255);
  69. arParams[4].Direction = ParameterDirection.Input;
  70. arParams[4].Value = pagePath;
  71. arParams[5] = new MySqlParameter("?PageOrder", MySqlDbType.Int32);
  72. arParams[5].Direction = ParameterDirection.Input;
  73. arParams[5].Value = pageOrder;
  74. arParams[6] = new MySqlParameter("?SiteGuid", MySqlDbType.VarChar, 36);
  75. arParams[6].Direction = ParameterDirection.Input;
  76. arParams[6].Value = siteGuid.ToString();
  77. int rowsAffected = MySqlHelper.ExecuteNonQuery(
  78. ConnectionString.GetWriteConnectionString(),
  79. sqlCommand.ToString(),
  80. arParams);
  81. return rowsAffected;
  82. }
  83. public static bool UpdateUserPage(
  84. Guid userPageId,
  85. string pageName,
  86. int pageOrder)
  87. {
  88. StringBuilder sqlCommand = new StringBuilder();
  89. sqlCommand.Append("UPDATE mp_UserPages ");
  90. sqlCommand.Append("SET ");
  91. sqlCommand.Append("PageName = ?PageName, ");
  92. sqlCommand.Append("PageOrder = ?PageOrder ");
  93. sqlCommand.Append("WHERE UserPageID = ?UserPageID; ");
  94. MySqlParameter[] arParams = new MySqlParameter[3];
  95. arParams[0] = new MySqlParameter("?UserPageID", MySqlDbType.VarChar, 36);
  96. arParams[0].Direction = ParameterDirection.Input;
  97. arParams[0].Value = userPageId.ToString();
  98. arParams[1] = new MySqlParameter("?PageName", MySqlDbType.VarChar, 255);
  99. arParams[1].Direction = ParameterDirection.Input;
  100. arParams[1].Value = pageName;
  101. arParams[2] = new MySqlParameter("?PageOrder", MySqlDbType.Int32);
  102. arParams[2].Direction = ParameterDirection.Input;
  103. arParams[2].Value = pageOrder;
  104. int rowsAffected = MySqlHelper.ExecuteNonQuery(
  105. ConnectionString.GetWriteConnectionString(),
  106. sqlCommand.ToString(),
  107. arParams);
  108. return (rowsAffected > 0);
  109. }
  110. public static bool DeleteUserPage(Guid userPageId)
  111. {
  112. StringBuilder sqlCommand = new StringBuilder();
  113. sqlCommand.Append("DELETE FROM mp_UserPages ");
  114. sqlCommand.Append("WHERE UserPageID = ?UserPageID; ");
  115. MySqlParameter[] arParams = new MySqlParameter[1];
  116. arParams[0] = new MySqlParameter("?UserPageID", MySqlDbType.VarChar, 36);
  117. arParams[0].Direction = ParameterDirection.Input;
  118. arParams[0].Value = userPageId.ToString();
  119. int rowsAffected = MySqlHelper.ExecuteNonQuery(
  120. ConnectionString.GetWriteConnectionString(),
  121. sqlCommand.ToString(),
  122. arParams);
  123. return (rowsAffected > 0);
  124. }
  125. public static bool DeleteByUser(Guid userGuid)
  126. {
  127. StringBuilder sqlCommand = new StringBuilder();
  128. sqlCommand.Append("DELETE FROM mp_UserPages ");
  129. sqlCommand.Append("WHERE UserGuid = ?UserGuid; ");
  130. MySqlParameter[] arParams = new MySqlParameter[1];
  131. arParams[0] = new MySqlParameter("?UserGuid", MySqlDbType.VarChar, 36);
  132. arParams[0].Direction = ParameterDirection.Input;
  133. arParams[0].Value = userGuid.ToString();
  134. int rowsAffected = MySqlHelper.ExecuteNonQuery(
  135. ConnectionString.GetWriteConnectionString(),
  136. sqlCommand.ToString(),
  137. arParams);
  138. return (rowsAffected > 0);
  139. }
  140. public static IDataReader GetUserPage(Guid userPageId)
  141. {
  142. StringBuilder sqlCommand = new StringBuilder();
  143. sqlCommand.Append("SELECT * ");
  144. sqlCommand.Append("FROM mp_UserPages ");
  145. sqlCommand.Append("WHERE ");
  146. sqlCommand.Append("UserPageID = ?UserPageID ;");
  147. MySqlParameter[] arParams = new MySqlParameter[1];
  148. arParams[0] = new MySqlParameter("?UserPageID", MySqlDbType.VarChar, 36);
  149. arParams[0].Direction = ParameterDirection.Input;
  150. arParams[0].Value = userPageId.ToString();
  151. return MySqlHelper.ExecuteReader(
  152. ConnectionString.GetReadConnectionString(),
  153. sqlCommand.ToString(),
  154. arParams);
  155. }
  156. public static IDataReader SelectByUser(Guid userGuid)
  157. {
  158. StringBuilder sqlCommand = new StringBuilder();
  159. sqlCommand.Append("SELECT * ");
  160. sqlCommand.Append("FROM mp_UserPages ");
  161. sqlCommand.Append("WHERE ");
  162. sqlCommand.Append("UserGuid = ?UserGuid ");
  163. sqlCommand.Append("ORDER BY PageOrder ;");
  164. MySqlParameter[] arParams = new MySqlParameter[1];
  165. arParams[0] = new MySqlParameter("?UserGuid", MySqlDbType.VarChar, 36);
  166. arParams[0].Direction = ParameterDirection.Input;
  167. arParams[0].Value = userGuid.ToString();
  168. return MySqlHelper.ExecuteReader(
  169. ConnectionString.GetReadConnectionString(),
  170. sqlCommand.ToString(),
  171. arParams);
  172. }
  173. public static int GetNextPageOrder(Guid userGuid)
  174. {
  175. StringBuilder sqlCommand = new StringBuilder();
  176. sqlCommand.Append("SELECT COALESCE(MAX(PageOrder),-1) ");
  177. sqlCommand.Append("FROM mp_UserPages ");
  178. sqlCommand.Append("WHERE UserGuid = ?UserGuid ; ");
  179. MySqlParameter[] arParams = new MySqlParameter[1];
  180. arParams[0] = new MySqlParameter("?UserGuid", MySqlDbType.VarChar, 36);
  181. arParams[0].Direction = ParameterDirection.Input;
  182. arParams[0].Value = userGuid.ToString();
  183. int nextPageOrder = Convert.ToInt32(MySqlHelper.ExecuteScalar(
  184. ConnectionString.GetReadConnectionString(),
  185. sqlCommand.ToString(),
  186. arParams)) + 2;
  187. if (nextPageOrder == 1)
  188. {
  189. nextPageOrder = 3;
  190. }
  191. return nextPageOrder;
  192. }
  193. public static bool UpdatePageOrder(Guid userPageId, int pageOrder)
  194. {
  195. StringBuilder sqlCommand = new StringBuilder();
  196. sqlCommand.Append("UPDATE mp_UserPages ");
  197. sqlCommand.Append("SET ");
  198. sqlCommand.Append("PageOrder = ?PageOrder ");
  199. sqlCommand.Append("WHERE UserPageID = ?UserPageID; ");
  200. MySqlParameter[] arParams = new MySqlParameter[2];
  201. arParams[0] = new MySqlParameter("?UserPageID", MySqlDbType.VarChar, 36);
  202. arParams[0].Direction = ParameterDirection.Input;
  203. arParams[0].Value = userPageId.ToString();
  204. arParams[1] = new MySqlParameter("?PageOrder", MySqlDbType.Int32);
  205. arParams[1].Direction = ParameterDirection.Input;
  206. arParams[1].Value = pageOrder;
  207. int rowsAffected = MySqlHelper.ExecuteNonQuery(
  208. ConnectionString.GetWriteConnectionString(),
  209. sqlCommand.ToString(),
  210. arParams);
  211. return (rowsAffected > 0);
  212. }
  213. }
  214. }