diff --git a/ITContentProvider/ITCPNpgsqlProvider.cs b/ITContentProvider/ITCPNpgsqlProvider.cs
index 4c3dd948..4cd6486c 100644
--- a/ITContentProvider/ITCPNpgsqlProvider.cs
+++ b/ITContentProvider/ITCPNpgsqlProvider.cs
@@ -101,7 +101,7 @@ namespace ITContentProvider
cnx.Open ();
using (NpgsqlCommand cmd = cnx.CreateCommand()) {
cmd.CommandText = "delete from projets where id = @id";
- cmd.Parameters.Add ("@id", prjId);
+ cmd.Parameters.AddWithValue ("@id", prjId);
cmd.ExecuteNonQuery();
}
cnx.Close ();
@@ -122,10 +122,10 @@ namespace ITContentProvider
cnx.Open ();
using (NpgsqlCommand cmd = cnx.CreateCommand()) {
cmd.CommandText = "insert into projets (name,managerid,ApplicatonName,prdesc) values (@name,@mid,@appname,@pdesc)";
- cmd.Parameters.Add ("@name", name);
- cmd.Parameters.Add ("@mid", ownerId);
- cmd.Parameters.Add ("@appname", ApplicationName);
- cmd.Parameters.Add ("@desc", desc);
+ cmd.Parameters.AddWithValue ("@name", name);
+ cmd.Parameters.AddWithValue ("@mid", ownerId);
+ cmd.Parameters.AddWithValue ("@appname", ApplicationName);
+ cmd.Parameters.AddWithValue ("@desc", desc);
id = (int)cmd.ExecuteScalar ();
}
cnx.Close ();
diff --git a/ITContentProvider/ITContentProvider.csproj b/ITContentProvider/ITContentProvider.csproj
index 7f770066..17af2408 100644
--- a/ITContentProvider/ITContentProvider.csproj
+++ b/ITContentProvider/ITContentProvider.csproj
@@ -32,7 +32,6 @@
-
@@ -40,6 +39,12 @@
+
+ ..\packages\Npgsql.2.2.5\lib\net45\Mono.Security.dll
+
+
+ ..\packages\Npgsql.2.2.5\lib\net45\Npgsql.dll
+
@@ -66,4 +71,7 @@
+
+
+
\ No newline at end of file
diff --git a/ITContentProvider/packages.config b/ITContentProvider/packages.config
new file mode 100644
index 00000000..f5cffebe
--- /dev/null
+++ b/ITContentProvider/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/NpgsqlBlogProvider/NpgsqlBlogProvider.cs b/NpgsqlBlogProvider/NpgsqlBlogProvider.cs
index 3db8a530..c6345657 100644
--- a/NpgsqlBlogProvider/NpgsqlBlogProvider.cs
+++ b/NpgsqlBlogProvider/NpgsqlBlogProvider.cs
@@ -26,8 +26,8 @@ namespace Npgsql.Web.Blog
using (NpgsqlConnection cnx = new NpgsqlConnection (connectionString))
using (NpgsqlCommand cmd = cnx.CreateCommand ()) {
cmd.CommandText = "insert into bltag (blid,tag) values (@postid,@tag) returning _id";
- cmd.Parameters.Add("@tag",tag);
- cmd.Parameters.Add("@postid",postid);
+ cmd.Parameters.AddWithValue("@tag",tag);
+ cmd.Parameters.AddWithValue("@postid",postid);
return (long) cmd.ExecuteScalar ();
}
}
@@ -40,7 +40,7 @@ namespace Npgsql.Web.Blog
using (NpgsqlConnection cnx = new NpgsqlConnection (connectionString))
using (NpgsqlCommand cmd = cnx.CreateCommand ()) {
cmd.CommandText = "delete from bltag where _id = @tagid";
- cmd.Parameters.Add("@tagid",tagid);
+ cmd.Parameters.AddWithValue("@tagid",tagid);
cmd.ExecuteNonQuery ();
}
}
@@ -71,8 +71,8 @@ namespace Npgsql.Web.Blog
"where applicationname = @appname and postid = @id" +
((getHidden) ? " and visible = true ":" ") +
"order by posted asc" ;
- cmd.Parameters.Add ("@appname", applicationName);
- cmd.Parameters.Add ("@id", postid);
+ cmd.Parameters.AddWithValue ("@appname", applicationName);
+ cmd.Parameters.AddWithValue ("@id", postid);
cnx.Open ();
using (NpgsqlDataReader rdr = cmd.ExecuteReader()) {
while (rdr.Read ()) {
@@ -108,11 +108,11 @@ namespace Npgsql.Web.Blog
" bcontent=@content, " +
" visible = @visible " +
"where _id = @id";
- cmd.Parameters.Add ("@now", now);
- cmd.Parameters.Add ("@title", title);
- cmd.Parameters.Add ("@content", content);
- cmd.Parameters.Add ("@visible", visible);
- cmd.Parameters.Add ("@id", postid);
+ cmd.Parameters.AddWithValue ("@now", now);
+ cmd.Parameters.AddWithValue ("@title", title);
+ cmd.Parameters.AddWithValue ("@content", content);
+ cmd.Parameters.AddWithValue ("@visible", visible);
+ cmd.Parameters.AddWithValue ("@id", postid);
cnx.Open ();
cmd.ExecuteNonQuery ();
cnx.Close();
@@ -146,14 +146,14 @@ namespace Npgsql.Web.Blog
"modified,posted,visible,username,applicationname)" +
"values (@postid,@bcontent,@modified,@posted," +
"@visible,@username,@appname) returning _id";
- cmd.Parameters.Add ("@postid", postid);
- cmd.Parameters.Add ("@bcontent", content);
+ cmd.Parameters.AddWithValue ("@postid", postid);
+ cmd.Parameters.AddWithValue ("@bcontent", content);
DateTime now = DateTime.Now;
- cmd.Parameters.Add ("@modified", now);
- cmd.Parameters.Add ("@posted", now);
- cmd.Parameters.Add ("@visible", visible);
- cmd.Parameters.Add ("@username", from);
- cmd.Parameters.Add ("@appname", applicationName);
+ cmd.Parameters.AddWithValue ("@modified", now);
+ cmd.Parameters.AddWithValue ("@posted", now);
+ cmd.Parameters.AddWithValue ("@visible", visible);
+ cmd.Parameters.AddWithValue ("@username", from);
+ cmd.Parameters.AddWithValue ("@appname", applicationName);
cnx.Open ();
return (long) cmd.ExecuteScalar();
}
@@ -233,8 +233,8 @@ namespace Npgsql.Web.Blog
using (NpgsqlCommand cmd = cnx.CreateCommand()) {
cmd.CommandText = "select username, title, bcontent, modified, posted, visible from blog " +
"where applicationname = @appname and _id = @id";
- cmd.Parameters.Add ("@appname", applicationName);
- cmd.Parameters.Add ("@id", postid);
+ cmd.Parameters.AddWithValue ("@appname", applicationName);
+ cmd.Parameters.AddWithValue ("@id", postid);
cnx.Open ();
using (NpgsqlDataReader rdr = cmd.ExecuteReader()) {
if (rdr.Read ()) {
@@ -262,7 +262,7 @@ namespace Npgsql.Web.Blog
using (NpgsqlConnection cnx = new NpgsqlConnection (connectionString))
using (NpgsqlCommand cmd = cnx.CreateCommand ()) {
cmd.CommandText = "delete from comment where _id = @id returning postid";
- cmd.Parameters.Add ("id", cmtid);
+ cmd.Parameters.AddWithValue ("id", cmtid);
cnx.Open ();
postid = (long) cmd.ExecuteScalar ();
}
@@ -281,9 +281,9 @@ namespace Npgsql.Web.Blog
using (NpgsqlCommand cmd = cnx.CreateCommand()) {
cmd.CommandText = "select _id,bcontent,modified,posted,visible from blog " +
"where applicationname = @appname and username = @username and title = @title";
- cmd.Parameters.Add ("@appname", applicationName);
- cmd.Parameters.Add ("@username", username);
- cmd.Parameters.Add ("@title", title);
+ cmd.Parameters.AddWithValue ("@appname", applicationName);
+ cmd.Parameters.AddWithValue ("@username", username);
+ cmd.Parameters.AddWithValue ("@title", title);
cnx.Open ();
using (NpgsqlDataReader rdr = cmd.ExecuteReader()) {
if (rdr.Read ()) {
@@ -295,18 +295,20 @@ namespace Npgsql.Web.Blog
be.Posted = rdr.GetDateTime (rdr.GetOrdinal ("posted"));
be.Visible = rdr.GetBoolean (rdr.GetOrdinal ("visible"));
be.Id = rdr.GetInt64 (rdr.GetOrdinal ("_id"));
- using (NpgsqlCommand cmdtags = cnx.CreateCommand()) {
- List tags = new List ();
- cmd.CommandText = "select tag.name from tag,tagged where tag._id = tagged.tagid and tagged.postid = @pid";
- cmd.Parameters.Add ("@pid", be.Id);
- using (NpgsqlDataReader rdrt = cmd.ExecuteReader ()) {
- while (rdrt.Read ()) {
- tags.Add (rdrt.GetString (0));
- }
- }
- be.Tags = tags.ToArray ();
+ }
+ rdr.Close ();
+ }
+ if (be!=null)
+ using (NpgsqlCommand cmdtags = cnx.CreateCommand()) {
+ List tags = new List ();
+ cmd.CommandText = "select tag.name from tag,tagged where tag._id = tagged.tagid and tagged.postid = @pid";
+ cmd.Parameters.AddWithValue ("@pid", be.Id);
+ using (NpgsqlDataReader rdrt = cmd.ExecuteReader ()) {
+ while (rdrt.Read ()) {
+ tags.Add (rdrt.GetString (0));
}
}
+ be.Tags = tags.ToArray ();
}
}
return be;
@@ -330,14 +332,14 @@ namespace Npgsql.Web.Blog
using (NpgsqlCommand cmd = cnx.CreateCommand()) {
cmd.CommandText = "insert into blog (title,bcontent,modified,posted,visible,username,applicationname)" +
"values (@title,@bcontent,@modified,@posted,@visible,@username,@appname) returning _id";
- cmd.Parameters.Add ("@title", title);
- cmd.Parameters.Add ("@bcontent", content);
+ cmd.Parameters.AddWithValue ("@title", title);
+ cmd.Parameters.AddWithValue ("@bcontent", content);
DateTime now = DateTime.Now;
- cmd.Parameters.Add ("@modified", now);
- cmd.Parameters.Add ("@posted", now);
- cmd.Parameters.Add ("@visible", visible);
- cmd.Parameters.Add ("@username", username);
- cmd.Parameters.Add ("@appname", applicationName);
+ cmd.Parameters.AddWithValue ("@modified", now);
+ cmd.Parameters.AddWithValue ("@posted", now);
+ cmd.Parameters.AddWithValue ("@visible", visible);
+ cmd.Parameters.AddWithValue ("@username", username);
+ cmd.Parameters.AddWithValue ("@appname", applicationName);
cnx.Open ();
return (long) cmd.ExecuteScalar();
}
@@ -359,18 +361,18 @@ namespace Npgsql.Web.Blog
using (NpgsqlCommand cmd = cnx.CreateCommand()) {
cmd.CommandText = "select title,bcontent,modified,posted,username,visible from blog " +
"where applicationname = @appname";
- cmd.Parameters.Add ("@appname", applicationName);
+ cmd.Parameters.AddWithValue ("@appname", applicationName);
if ((searchflags & FindBlogEntryFlags.MatchContent) > 0) {
cmd.CommandText += " and bcontent like @bcontent";
- cmd.Parameters.Add ("@bcontent", pattern);
+ cmd.Parameters.AddWithValue ("@bcontent", pattern);
}
if ((searchflags & FindBlogEntryFlags.MatchTitle) > 0) {
cmd.CommandText += " and title like @title";
- cmd.Parameters.Add ("@title", pattern);
+ cmd.Parameters.AddWithValue ("@title", pattern);
}
if ((searchflags & FindBlogEntryFlags.MatchUserName) > 0) {
cmd.CommandText += " and username like @username";
- cmd.Parameters.Add ("@username", pattern);
+ cmd.Parameters.AddWithValue ("@username", pattern);
}
if ((searchflags & FindBlogEntryFlags.MatchInvisible) == 0) {
cmd.CommandText += " and visible = true";
@@ -409,9 +411,9 @@ namespace Npgsql.Web.Blog
using (NpgsqlConnection cnx=new NpgsqlConnection(connectionString))
using (NpgsqlCommand cmd = cnx.CreateCommand()) {
cmd.CommandText = "delete from blog where username = @username and applicationname = @appname and title=@title";
- cmd.Parameters.Add ("@username",username);
- cmd.Parameters.Add ("@appname", applicationName);
- cmd.Parameters.Add ("@title",title);
+ cmd.Parameters.AddWithValue ("@username",username);
+ cmd.Parameters.AddWithValue ("@appname", applicationName);
+ cmd.Parameters.AddWithValue ("@title",title);
cnx.Open ();
cmd.ExecuteNonQuery ();
cnx.Close();
@@ -443,8 +445,8 @@ namespace Npgsql.Web.Blog
"from blog where applicationname = @appname and visible = true " +
" order by posted desc limit @len" ;
- cmd.Parameters.Add ("@appname", applicationName);
- cmd.Parameters.Add ("@len", defaultPageSize*10);
+ cmd.Parameters.AddWithValue ("@appname", applicationName);
+ cmd.Parameters.AddWithValue ("@len", defaultPageSize*10);
cnx.Open ();
using (NpgsqlDataReader rdr = cmd.ExecuteReader()) {
totalRecords = 0;
diff --git a/NpgsqlBlogProvider/NpgsqlBlogProvider.csproj b/NpgsqlBlogProvider/NpgsqlBlogProvider.csproj
index 69070839..f65a05d4 100644
--- a/NpgsqlBlogProvider/NpgsqlBlogProvider.csproj
+++ b/NpgsqlBlogProvider/NpgsqlBlogProvider.csproj
@@ -41,9 +41,14 @@
-
+
+ ..\packages\Npgsql.2.2.5\lib\net45\Mono.Security.dll
+
+
+ ..\packages\Npgsql.2.2.5\lib\net45\Npgsql.dll
+
@@ -56,6 +61,7 @@
+
diff --git a/NpgsqlBlogProvider/packages.config b/NpgsqlBlogProvider/packages.config
new file mode 100644
index 00000000..f5cffebe
--- /dev/null
+++ b/NpgsqlBlogProvider/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/NpgsqlMRPProviders/NpgsqlMRPProviders.csproj b/NpgsqlMRPProviders/NpgsqlMRPProviders.csproj
index b77fba45..4d1e9aae 100644
--- a/NpgsqlMRPProviders/NpgsqlMRPProviders.csproj
+++ b/NpgsqlMRPProviders/NpgsqlMRPProviders.csproj
@@ -41,12 +41,17 @@
-
+
+ ..\packages\Npgsql.2.2.5\lib\net45\Mono.Security.dll
+
+
+ ..\packages\Npgsql.2.2.5\lib\net45\Npgsql.dll
+
@@ -66,5 +71,6 @@
+
\ No newline at end of file
diff --git a/NpgsqlMRPProviders/NpgsqlMembershipProvider.cs b/NpgsqlMRPProviders/NpgsqlMembershipProvider.cs
index 78fc8555..b5289ab4 100644
--- a/NpgsqlMRPProviders/NpgsqlMembershipProvider.cs
+++ b/NpgsqlMRPProviders/NpgsqlMembershipProvider.cs
@@ -259,10 +259,10 @@ namespace Npgsql.Web
using (NpgsqlCommand cmd = new NpgsqlCommand ("UPDATE Users " +
" SET Passw = @Password, LastPasswordChangedDate = @LastPasswordChangedDate " +
" WHERE Username = @Username AND ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@Password", NpgsqlDbType.Varchar, 255).Value = EncodePassword (newPwd);
- cmd.Parameters.Add ("@LastPasswordChangedDate", DateTime.Now);
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Password", NpgsqlDbType.Varchar, 255).Value = EncodePassword (newPwd);
+ cmd.Parameters.AddWithValue ("@LastPasswordChangedDate", DateTime.Now);
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
conn.Open ();
rowsAffected = cmd.ExecuteNonQuery ();
conn.Close ();
@@ -301,10 +301,10 @@ namespace Npgsql.Web
using (NpgsqlCommand cmd = new NpgsqlCommand ("UPDATE Users " +
" SET PasswordQuestion = @Question, PasswordAnswer = @Answer" +
" WHERE Username = @Username AND ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@Question", NpgsqlDbType.Varchar, 255).Value = newPwdQuestion;
- cmd.Parameters.Add ("@Answer", NpgsqlDbType.Varchar, 255).Value = EncodePassword (newPwdAnswer);
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Question", NpgsqlDbType.Varchar, 255).Value = newPwdQuestion;
+ cmd.Parameters.AddWithValue ("@Answer", NpgsqlDbType.Varchar, 255).Value = EncodePassword (newPwdAnswer);
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
conn.Open ();
rowsAffected = cmd.ExecuteNonQuery ();
conn.Close ();
@@ -388,24 +388,24 @@ namespace Npgsql.Web
"@FailedPasswordAttemptCount , @FailedPasswordAttemptWindowStart, " +
" @FailedPasswordAnswerAttemptCount, @FailedPasswordAnswerAttemptWindowStart)", conn)) {
- cmd.Parameters.Add ("@PKID", NpgsqlDbType.Varchar).Value = providerUserKey;
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@Password", NpgsqlDbType.Varchar, 255).Value = EncodePassword (password);
- cmd.Parameters.Add ("@Email", NpgsqlDbType.Varchar, 128).Value = email;
- cmd.Parameters.Add ("@PasswordQuestion", NpgsqlDbType.Varchar, 255).Value = passwordQuestion;
- cmd.Parameters.Add ("@PasswordAnswer", NpgsqlDbType.Varchar, 255).Value = EncodePassword (passwordAnswer);
- cmd.Parameters.Add ("@IsApproved", NpgsqlDbType.Bit).Value = isApproved;
- cmd.Parameters.Add ("@Comment", NpgsqlDbType.Varchar, 255).Value = "";
- cmd.Parameters.Add ("@CreationDate", createDate);
- cmd.Parameters.Add ("@LastPasswordChangedDate", createDate);
- cmd.Parameters.Add ("@LastActivityDate", createDate);
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
- cmd.Parameters.Add ("@IsLockedOut", NpgsqlDbType.Bit).Value = false;
- cmd.Parameters.Add ("@LastLockedOutDate", createDate);
- cmd.Parameters.Add ("@FailedPasswordAttemptCount", NpgsqlDbType.Integer).Value = 0;
- cmd.Parameters.Add ("@FailedPasswordAttemptWindowStart", createDate);
- cmd.Parameters.Add ("@FailedPasswordAnswerAttemptCount", NpgsqlDbType.Integer).Value = 0;
- cmd.Parameters.Add ("@FailedPasswordAnswerAttemptWindowStart", createDate);
+ cmd.Parameters.AddWithValue ("@PKID", NpgsqlDbType.Varchar).Value = providerUserKey;
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@Password", NpgsqlDbType.Varchar, 255).Value = EncodePassword (password);
+ cmd.Parameters.AddWithValue ("@Email", NpgsqlDbType.Varchar, 128).Value = email;
+ cmd.Parameters.AddWithValue ("@PasswordQuestion", NpgsqlDbType.Varchar, 255).Value = passwordQuestion;
+ cmd.Parameters.AddWithValue ("@PasswordAnswer", NpgsqlDbType.Varchar, 255).Value = EncodePassword (passwordAnswer);
+ cmd.Parameters.AddWithValue ("@IsApproved", NpgsqlDbType.Bit).Value = isApproved;
+ cmd.Parameters.AddWithValue ("@Comment", NpgsqlDbType.Varchar, 255).Value = "";
+ cmd.Parameters.AddWithValue ("@CreationDate", createDate);
+ cmd.Parameters.AddWithValue ("@LastPasswordChangedDate", createDate);
+ cmd.Parameters.AddWithValue ("@LastActivityDate", createDate);
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@IsLockedOut", NpgsqlDbType.Bit).Value = false;
+ cmd.Parameters.AddWithValue ("@LastLockedOutDate", createDate);
+ cmd.Parameters.AddWithValue ("@FailedPasswordAttemptCount", NpgsqlDbType.Integer).Value = 0;
+ cmd.Parameters.AddWithValue ("@FailedPasswordAttemptWindowStart", createDate);
+ cmd.Parameters.AddWithValue ("@FailedPasswordAnswerAttemptCount", NpgsqlDbType.Integer).Value = 0;
+ cmd.Parameters.AddWithValue ("@FailedPasswordAnswerAttemptWindowStart", createDate);
conn.Open ();
int recAdded = cmd.ExecuteNonQuery ();
if (recAdded > 0) {
@@ -450,8 +450,8 @@ namespace Npgsql.Web
using (NpgsqlConnection conn = new NpgsqlConnection (connectionString)) {
using (NpgsqlCommand cmd = new NpgsqlCommand ("DELETE FROM Users " +
" WHERE Username = @Username AND Applicationname = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
conn.Open ();
rowsAffected = cmd.ExecuteNonQuery ();
if (deleteAllRelatedData) {
@@ -481,7 +481,7 @@ namespace Npgsql.Web
using (NpgsqlConnection conn = new NpgsqlConnection (connectionString)) {
using (NpgsqlCommand cmd = new NpgsqlCommand ("SELECT Count(*) FROM Users " +
"WHERE ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = ApplicationName;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = ApplicationName;
conn.Open ();
totalRecords = 0;
totalRecords = (int)((long)cmd.ExecuteScalar ());
@@ -539,8 +539,8 @@ namespace Npgsql.Web
using (NpgsqlCommand cmd = new NpgsqlCommand ("SELECT Count(*) FROM Users " +
" WHERE LastActivityDate > @CompareDate AND ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@CompareDate", compareTime);
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@CompareDate", compareTime);
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
@@ -583,8 +583,8 @@ namespace Npgsql.Web
using (NpgsqlCommand cmd = new NpgsqlCommand ("SELECT Passw, PasswordAnswer, IsLockedOut FROM Users " +
" WHERE Username = @Username AND ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
NpgsqlDataReader reader = null;
@@ -646,29 +646,30 @@ namespace Npgsql.Web
" LastActivityDate, LastPasswordChangedDate, LastLockedOutDate" +
" FROM Users WHERE Username = @Username AND ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
conn.Open ();
using (NpgsqlDataReader reader = cmd.ExecuteReader ()) {
if (reader.HasRows) {
reader.Read ();
u = GetUserFromReader (reader);
-
- if (userIsOnline) {
- NpgsqlCommand updateCmd = new NpgsqlCommand ("UPDATE Users " +
- "SET LastActivityDate = @LastActivityDate " +
- "WHERE Username = @Username AND Applicationname = @ApplicationName", conn);
-
- updateCmd.Parameters.Add ("@LastActivityDate", DateTime.Now);
- updateCmd.Parameters.Add ("@Username", username);
- updateCmd.Parameters.Add ("@ApplicationName", pApplicationName);
-
- updateCmd.ExecuteNonQuery ();
- }
}
reader.Close ();
}
}
+
+ if (u != null && userIsOnline) {
+ NpgsqlCommand updateCmd = new NpgsqlCommand ("UPDATE Users " +
+ "SET LastActivityDate = @LastActivityDate " +
+ "WHERE Username = @Username AND Applicationname = @ApplicationName", conn);
+
+ updateCmd.Parameters.AddWithValue ("@LastActivityDate", DateTime.Now);
+ updateCmd.Parameters.AddWithValue ("@Username", username);
+ updateCmd.Parameters.AddWithValue ("@ApplicationName", pApplicationName);
+
+ updateCmd.ExecuteNonQuery ();
+ }
+
conn.Close ();
}
return u;
@@ -694,7 +695,7 @@ namespace Npgsql.Web
" LastActivityDate, LastPasswordChangedDate, LastLockedOutDate" +
" FROM Users WHERE PKID = @PKID", conn)) {
- cmd.Parameters.Add ("@PKID", NpgsqlDbType.Varchar).Value = providerUserKey;
+ cmd.Parameters.AddWithValue ("@PKID", NpgsqlDbType.Varchar).Value = providerUserKey;
conn.Open ();
using (NpgsqlDataReader reader = cmd.ExecuteReader ()) {
@@ -702,16 +703,17 @@ namespace Npgsql.Web
reader.Read ();
u = GetUserFromReader (reader);
- if (userIsOnline) {
- NpgsqlCommand updateCmd = new NpgsqlCommand ("UPDATE Users " +
- "SET LastActivityDate = @LastActivityDate " +
- "WHERE PKID = @PKID", conn);
- updateCmd.Parameters.Add ("@LastActivityDate", DateTime.Now);
- updateCmd.Parameters.Add ("@PKID", providerUserKey);
- updateCmd.ExecuteNonQuery ();
- }
+
}
reader.Close ();
+ if (u!=null && userIsOnline) {
+ NpgsqlCommand updateCmd = new NpgsqlCommand ("UPDATE Users " +
+ "SET LastActivityDate = @LastActivityDate " +
+ "WHERE PKID = @PKID", conn);
+ updateCmd.Parameters.AddWithValue ("@LastActivityDate", DateTime.Now);
+ updateCmd.Parameters.AddWithValue ("@PKID", providerUserKey);
+ updateCmd.ExecuteNonQuery ();
+ }
}
}
conn.Close ();
@@ -790,9 +792,9 @@ namespace Npgsql.Web
using (NpgsqlCommand cmd = new NpgsqlCommand ("UPDATE Users " +
" SET IsLockedOut = False, LastLockedOutDate = @LastLockedOutDate " +
" WHERE Username = @Username AND ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@LastLockedOutDate", DateTime.Now);
- cmd.Parameters.Add ("@Username", username);
- cmd.Parameters.Add ("@ApplicationName", pApplicationName);
+ cmd.Parameters.AddWithValue ("@LastLockedOutDate", DateTime.Now);
+ cmd.Parameters.AddWithValue ("@Username", username);
+ cmd.Parameters.AddWithValue ("@ApplicationName", pApplicationName);
conn.Open ();
rowsAffected = cmd.ExecuteNonQuery ();
conn.Close ();
@@ -819,8 +821,8 @@ namespace Npgsql.Web
using (NpgsqlConnection conn = new NpgsqlConnection (connectionString)) {
using (NpgsqlCommand cmd = new NpgsqlCommand ("SELECT Username" +
" FROM Users WHERE Email = @Email AND ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@Email", NpgsqlDbType.Varchar, 128).Value = email;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Email", NpgsqlDbType.Varchar, 128).Value = email;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
conn.Open ();
username = (string)cmd.ExecuteScalar ();
conn.Close ();
@@ -870,8 +872,8 @@ namespace Npgsql.Web
using (NpgsqlCommand cmd = new NpgsqlCommand ("SELECT PasswordAnswer, IsLockedOut FROM Users " +
" WHERE Username = @Username AND ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
string passwordAnswer = "";
@@ -900,10 +902,10 @@ namespace Npgsql.Web
" SET Passw = @Password, LastPasswordChangedDate = @LastPasswordChangedDate" +
" WHERE Username = @Username AND ApplicationName = @ApplicationName AND IsLockedOut = False", conn);
- updateCmd.Parameters.Add ("@Password", NpgsqlDbType.Varchar, 255).Value = EncodePassword (newPassword);
- updateCmd.Parameters.Add ("@LastPasswordChangedDate", DateTime.Now);
- updateCmd.Parameters.Add ("@Username", username);
- updateCmd.Parameters.Add ("@ApplicationName", pApplicationName);
+ updateCmd.Parameters.AddWithValue ("@Password", NpgsqlDbType.Varchar, 255).Value = EncodePassword (newPassword);
+ updateCmd.Parameters.AddWithValue ("@LastPasswordChangedDate", DateTime.Now);
+ updateCmd.Parameters.AddWithValue ("@Username", username);
+ updateCmd.Parameters.AddWithValue ("@ApplicationName", pApplicationName);
rowsAffected = updateCmd.ExecuteNonQuery ();
@@ -935,11 +937,11 @@ namespace Npgsql.Web
" SET Email = @Email, Comment = @Comment," +
" IsApproved = @IsApproved" +
" WHERE Username = @Username AND ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@Email", NpgsqlDbType.Varchar, 128).Value = user.Email;
- cmd.Parameters.Add ("@Comment", NpgsqlDbType.Varchar, 255).Value = user.Comment;
- cmd.Parameters.Add ("@IsApproved", NpgsqlDbType.Bit).Value = user.IsApproved;
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = user.UserName;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Email", NpgsqlDbType.Varchar, 128).Value = user.Email;
+ cmd.Parameters.AddWithValue ("@Comment", NpgsqlDbType.Varchar, 255).Value = user.Comment;
+ cmd.Parameters.AddWithValue ("@IsApproved", NpgsqlDbType.Bit).Value = user.IsApproved;
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = user.UserName;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
conn.Open ();
cmd.ExecuteNonQuery ();
conn.Close ();
@@ -966,8 +968,8 @@ namespace Npgsql.Web
using (NpgsqlCommand cmd = new NpgsqlCommand ("SELECT Passw, IsApproved FROM Users " +
" WHERE Username = @Username AND ApplicationName = @ApplicationName AND IsLockedOut = False", conn)) {
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
bool isApproved = false;
@@ -993,9 +995,9 @@ namespace Npgsql.Web
NpgsqlCommand updateCmd = new NpgsqlCommand ("UPDATE Users SET LastLoginDate = @LastLoginDate" +
" WHERE Username = @Username AND ApplicationName = @ApplicationName", conn);
- updateCmd.Parameters.Add ("@LastLoginDate", DateTime.Now);
- updateCmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- updateCmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ updateCmd.Parameters.AddWithValue ("@LastLoginDate", DateTime.Now);
+ updateCmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ updateCmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
updateCmd.ExecuteNonQuery ();
}
@@ -1032,8 +1034,8 @@ namespace Npgsql.Web
" FROM Users " +
" WHERE Username = @Username AND ApplicationName = @ApplicationName", conn)) {
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
DateTime windowStart = new DateTime ();
@@ -1079,10 +1081,10 @@ namespace Npgsql.Web
cmd.Parameters.Clear ();
- cmd.Parameters.Add ("@Count", NpgsqlDbType.Integer).Value = 1;
- cmd.Parameters.Add ("@WindowStart", DateTime.Now);
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Count", NpgsqlDbType.Integer).Value = 1;
+ cmd.Parameters.AddWithValue ("@WindowStart", DateTime.Now);
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
cmd.ExecuteNonQuery ();
@@ -1097,10 +1099,10 @@ namespace Npgsql.Web
cmd.Parameters.Clear ();
- cmd.Parameters.Add ("@IsLockedOut", NpgsqlDbType.Bit).Value = true;
- cmd.Parameters.Add ("@LastLockedOutDate", DateTime.Now);
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@IsLockedOut", NpgsqlDbType.Bit).Value = true;
+ cmd.Parameters.AddWithValue ("@LastLockedOutDate", DateTime.Now);
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
cmd.ExecuteNonQuery ();
@@ -1120,9 +1122,9 @@ namespace Npgsql.Web
cmd.Parameters.Clear ();
- cmd.Parameters.Add ("@Count", NpgsqlDbType.Integer).Value = failureCount;
- cmd.Parameters.Add ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@Count", NpgsqlDbType.Integer).Value = failureCount;
+ cmd.Parameters.AddWithValue ("@Username", NpgsqlDbType.Varchar, 255).Value = username;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
cmd.ExecuteNonQuery ();
}
@@ -1260,8 +1262,8 @@ namespace Npgsql.Web
using (NpgsqlCommand cmd = new NpgsqlCommand ("SELECT count(*)" +
" FROM Users " +
" WHERE Username LIKE @uns AND ApplicationName = @appn ", conn)) {
- cmd.Parameters.Add ("@uns", usernameToMatch);
- cmd.Parameters.Add ("@appn", ApplicationName);
+ cmd.Parameters.AddWithValue ("@uns", usernameToMatch);
+ cmd.Parameters.AddWithValue ("@appn", ApplicationName);
totalRecords = (int)((long)cmd.ExecuteScalar ());
}
if (totalRecords > 0)
@@ -1271,8 +1273,8 @@ namespace Npgsql.Web
" FROM Users " +
" WHERE Username LIKE @UsernameSearch AND ApplicationName = @ApplicationName " +
" ORDER BY Username Asc", conn)) {
- cmd.Parameters.Add ("@UsernameSearch", NpgsqlDbType.Varchar, 255).Value = usernameToMatch;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
+ cmd.Parameters.AddWithValue ("@UsernameSearch", NpgsqlDbType.Varchar, 255).Value = usernameToMatch;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = pApplicationName;
using (NpgsqlDataReader reader = cmd.ExecuteReader ()) {
int counter = 0;
@@ -1319,8 +1321,8 @@ namespace Npgsql.Web
using (NpgsqlCommand cmd = new NpgsqlCommand ("SELECT count(*) " +
" FROM Users " +
" WHERE Email LIKE @EmailSearch AND ApplicationName = @appname ", conn)) {
- cmd.Parameters.Add ("@EmailSearch", emailToMatch);
- cmd.Parameters.Add ("@appname", this.ApplicationName);
+ cmd.Parameters.AddWithValue ("@EmailSearch", emailToMatch);
+ cmd.Parameters.AddWithValue ("@appname", this.ApplicationName);
totalRecords = (int)(long)cmd.ExecuteScalar ();
}
@@ -1330,8 +1332,8 @@ namespace Npgsql.Web
" FROM Users " +
" WHERE Email LIKE @EmailSearch AND ApplicationName = @ApplicationName " +
" ORDER BY Username Asc", conn)) {
- cmd.Parameters.Add ("@EmailSearch", NpgsqlDbType.Varchar, 255).Value = emailToMatch;
- cmd.Parameters.Add ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = ApplicationName;
+ cmd.Parameters.AddWithValue ("@EmailSearch", NpgsqlDbType.Varchar, 255).Value = emailToMatch;
+ cmd.Parameters.AddWithValue ("@ApplicationName", NpgsqlDbType.Varchar, 255).Value = ApplicationName;
using (NpgsqlDataReader reader = cmd.ExecuteReader ()) {
int counter = 0;
int startIndex = pageSize * pageIndex;
diff --git a/NpgsqlMRPProviders/NpgsqlProfileProvider.cs b/NpgsqlMRPProviders/NpgsqlProfileProvider.cs
index eb880091..7db4faac 100644
--- a/NpgsqlMRPProviders/NpgsqlProfileProvider.cs
+++ b/NpgsqlMRPProviders/NpgsqlProfileProvider.cs
@@ -111,8 +111,8 @@ namespace Npgsql.Web
using (NpgsqlConnection cnx = new NpgsqlConnection (connectionString)) {
using (NpgsqlCommand cmd = cnx.CreateCommand ()) {
cmd.CommandText = "select username, uniqueid, lastactivitydate, lastupdateddate, isanonymous from profiles where username like @username and applicationname = @appname";
- cmd.Parameters.Add ("@username", usernameToMatch);
- cmd.Parameters.Add ("@appname", applicationName);
+ cmd.Parameters.AddWithValue ("@username", usernameToMatch);
+ cmd.Parameters.AddWithValue ("@appname", applicationName);
cnx.Open ();
using (NpgsqlDataReader r = cmd.ExecuteReader ()) {
if (r.HasRows) {
@@ -206,8 +206,8 @@ namespace Npgsql.Web
"profiledata.uniqueid = profiles.uniqueid " +
"and profiles.username = @username " +
"and profiles.applicationname = @appname";
- cmd.Parameters.Add ("@username", username);
- cmd.Parameters.Add ("@appname", applicationName);
+ cmd.Parameters.AddWithValue ("@username", username);
+ cmd.Parameters.AddWithValue ("@appname", applicationName);
cnx.Open ();
using (NpgsqlDataReader r = cmd.ExecuteReader (
System.Data.CommandBehavior.CloseConnection | System.Data.CommandBehavior.SingleRow)) {
@@ -249,8 +249,8 @@ namespace Npgsql.Web
cmdpi.CommandText = "select count(uniqueid) " +
"from profiles where username = @username " +
"and applicationname = @appname";
- cmdpi.Parameters.Add ("@username", username);
- cmdpi.Parameters.Add ("@appname", applicationName);
+ cmdpi.Parameters.AddWithValue ("@username", username);
+ cmdpi.Parameters.AddWithValue ("@appname", applicationName);
long c = (long)cmdpi.ExecuteScalar ();
if (c == 0) {
@@ -263,7 +263,7 @@ namespace Npgsql.Web
//
using (NpgsqlCommand cmdpdins = cnx.CreateCommand ()) {
cmdpdins.CommandText = "insert into profiledata (uniqueid) values (@puid)";
- cmdpdins.Parameters.Add ("@puid", puid);
+ cmdpdins.Parameters.AddWithValue ("@puid", puid);
cmdpdins.ExecuteNonQuery ();
}
} else {
@@ -288,8 +288,8 @@ namespace Npgsql.Web
"where uniqueid = @puid ",
s.Name
);
- cmd.Parameters.Add ("@puid", puid);
- cmd.Parameters.Add ("@val", s.PropertyValue);
+ cmd.Parameters.AddWithValue ("@puid", puid);
+ cmd.Parameters.AddWithValue ("@val", s.PropertyValue);
cmd.ExecuteNonQuery ();
}
}
diff --git a/NpgsqlMRPProviders/NpgsqlRoleProvider.cs b/NpgsqlMRPProviders/NpgsqlRoleProvider.cs
index 064f4da8..5dc60062 100644
--- a/NpgsqlMRPProviders/NpgsqlRoleProvider.cs
+++ b/NpgsqlMRPProviders/NpgsqlRoleProvider.cs
@@ -123,9 +123,9 @@ namespace Npgsql.Web
using (var comm = conn.CreateCommand()) {
comm.CommandType = System.Data.CommandType.Text;
comm.CommandText = "insert into usersroles (applicationname, username, rolename) values (@appname,@user,@role)";
- comm.Parameters.Add ("appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
- NpgsqlParameter pu = comm.Parameters.Add ("user", NpgsqlTypes.NpgsqlDbType.Varchar, 250);
- NpgsqlParameter pr = comm.Parameters.Add ("role", NpgsqlTypes.NpgsqlDbType.Varchar, 250);
+ comm.Parameters.AddWithValue ("appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
+ NpgsqlParameter pu = comm.Parameters.AddWithValue ("user", NpgsqlTypes.NpgsqlDbType.Varchar, 250);
+ NpgsqlParameter pr = comm.Parameters.AddWithValue ("role", NpgsqlTypes.NpgsqlDbType.Varchar, 250);
foreach (string u in usernames) {
pu.Value = u;
foreach (string r in roleNames) {
@@ -174,9 +174,9 @@ namespace Npgsql.Web
using (var comm = conn.CreateCommand()) {
comm.CommandType = System.Data.CommandType.Text;
comm.CommandText = "insert into roles (rolename, applicationname, comment) values (@rolename, @appname, @comment)";
- comm.Parameters.Add ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = roleName;
- comm.Parameters.Add ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
- comm.Parameters.Add ("@comment", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = roleName;
+ comm.Parameters.AddWithValue ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = roleName;
+ comm.Parameters.AddWithValue ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
+ comm.Parameters.AddWithValue ("@comment", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = roleName;
comm.ExecuteNonQuery ();
}
}
@@ -206,9 +206,9 @@ namespace Npgsql.Web
using (var comm = conn.CreateCommand()) {
comm.CommandType = System.Data.CommandType.Text;
comm.CommandText = "delete from roles where rolename = @rolename and applicationname = @appname";
- comm.Parameters.Add ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = roleName;
- comm.Parameters.Add ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
- comm.Parameters.Add ("@comment", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = roleName;
+ comm.Parameters.AddWithValue ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = roleName;
+ comm.Parameters.AddWithValue ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
+ comm.Parameters.AddWithValue ("@comment", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = roleName;
comm.ExecuteNonQuery ();
}
}
@@ -245,9 +245,9 @@ namespace Npgsql.Web
comm.CommandType = System.Data.CommandType.Text;
comm.CommandText = "select username from usersroles where applicationname = @appname " +
"and rolename = @rolename and username like @username";
- comm.Parameters.Add ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = rolename;
- comm.Parameters.Add ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
- comm.Parameters.Add ("@username", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = usernameToMatch;
+ comm.Parameters.AddWithValue ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = rolename;
+ comm.Parameters.AddWithValue ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
+ comm.Parameters.AddWithValue ("@username", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = usernameToMatch;
using (var reader = comm.ExecuteReader()) {
var r = new List ();
var usernameColumn = reader.GetOrdinal ("username");
@@ -272,7 +272,7 @@ namespace Npgsql.Web
comm.CommandType = System.Data.CommandType.Text;
comm.CommandText = "select rolename from roles where applicationname = @appname";
- comm.Parameters.Add ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
+ comm.Parameters.AddWithValue ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
using (var reader = comm.ExecuteReader()) {
var r = new List ();
var rolenameColumn = reader.GetOrdinal ("rolename");
@@ -301,8 +301,8 @@ namespace Npgsql.Web
using (var comm = conn.CreateCommand()) {
comm.CommandType = System.Data.CommandType.Text;
comm.CommandText = "select rolename from usersroles where applicationname = @appname and username = @username";
- comm.Parameters.Add ("@username", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = username;
- comm.Parameters.Add ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
+ comm.Parameters.AddWithValue ("@username", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = username;
+ comm.Parameters.AddWithValue ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
using (var reader = comm.ExecuteReader()) {
var r = new List ();
var rolenameColumn = reader.GetOrdinal ("rolename");
@@ -333,8 +333,8 @@ namespace Npgsql.Web
comm.CommandType = System.Data.CommandType.Text;
comm.CommandText = "select username from usersroles where applicationname = @appname " +
"and rolename = @rolename";
- comm.Parameters.Add ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 255).Value = roleName;
- comm.Parameters.Add ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 255).Value = applicationName;
+ comm.Parameters.AddWithValue ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 255).Value = roleName;
+ comm.Parameters.AddWithValue ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 255).Value = applicationName;
using (var reader = comm.ExecuteReader()) {
var r = new List ();
var usernameColumn = reader.GetOrdinal ("username");
@@ -370,9 +370,9 @@ namespace Npgsql.Web
comm.CommandType = System.Data.CommandType.Text;
comm.CommandText = "select count(*)>0 from usersroles where applicationname = @appname " +
"and username = @username and rolename = @rolename";
- comm.Parameters.Add ("@username", username);
- comm.Parameters.Add ("@rolename", roleName);
- comm.Parameters.Add ("@appname", applicationName);
+ comm.Parameters.AddWithValue ("@username", username);
+ comm.Parameters.AddWithValue ("@rolename", roleName);
+ comm.Parameters.AddWithValue ("@appname", applicationName);
var retval = (bool)comm.ExecuteScalar ();
return retval;
}
@@ -401,9 +401,9 @@ namespace Npgsql.Web
comm.CommandType = System.Data.CommandType.Text;
comm.CommandText = "delete from usersroles where applicationname = @appname and " +
"username = @username and rolename = @rolename";
- NpgsqlParameter pu = comm.Parameters.Add ("@username", NpgsqlTypes.NpgsqlDbType.Varchar, 250);
- NpgsqlParameter pr = comm.Parameters.Add ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 250);
- comm.Parameters.Add ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
+ NpgsqlParameter pu = comm.Parameters.AddWithValue ("@username", NpgsqlTypes.NpgsqlDbType.Varchar, 250);
+ NpgsqlParameter pr = comm.Parameters.AddWithValue ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 250);
+ comm.Parameters.AddWithValue ("@appname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
foreach (string rolename in roleNames) {
pr.Value = rolename;
foreach (string username in usernames) {
@@ -429,8 +429,8 @@ namespace Npgsql.Web
using (var comm = new NpgsqlCommand("role_exists", conn)) {
comm.CommandType = System.Data.CommandType.Text;
comm.CommandText = "select Count(*)>0 from roles where applicationname = @applicationname and rolename = @rolename";
- comm.Parameters.Add ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = roleName;
- comm.Parameters.Add ("@applicationname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
+ comm.Parameters.AddWithValue ("@rolename", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = roleName;
+ comm.Parameters.AddWithValue ("@applicationname", NpgsqlTypes.NpgsqlDbType.Varchar, 250).Value = applicationName;
var retval = (bool)comm.ExecuteScalar ();
return retval;
}
diff --git a/NpgsqlMRPProviders/packages.config b/NpgsqlMRPProviders/packages.config
new file mode 100644
index 00000000..f5cffebe
--- /dev/null
+++ b/NpgsqlMRPProviders/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/WorkFlowProvider/NpgsqlContentProvider.cs b/WorkFlowProvider/NpgsqlContentProvider.cs
index a99e2946..81e93265 100644
--- a/WorkFlowProvider/NpgsqlContentProvider.cs
+++ b/WorkFlowProvider/NpgsqlContentProvider.cs
@@ -33,11 +33,11 @@ namespace Yavsc
using (NpgsqlCommand cmd = cnx.CreateCommand ()) {
cmd.CommandText =
"insert into commandes (prdref,creation,params,clientname,applicationname) values (@pref,@creat,@prms,@cli,@app) returning id";
- cmd.Parameters.Add ("@pref", com.ProductRef);
- cmd.Parameters.Add ("@creat", com.CreationDate);
- cmd.Parameters.Add ("@prms", JsonConvert.SerializeObject(com.Parameters));
- cmd.Parameters.Add ("@cli", Membership.GetUser().UserName);
- cmd.Parameters.Add ("@app", ApplicationName);
+ cmd.Parameters.AddWithValue ("@pref", com.ProductRef);
+ cmd.Parameters.AddWithValue ("@creat", com.CreationDate);
+ cmd.Parameters.AddWithValue ("@prms", JsonConvert.SerializeObject(com.Parameters));
+ cmd.Parameters.AddWithValue ("@cli", Membership.GetUser().UserName);
+ cmd.Parameters.AddWithValue ("@app", ApplicationName);
cnx.Open ();
com.Id = id = (long)cmd.ExecuteScalar ();
}
@@ -64,8 +64,8 @@ namespace Yavsc
using (NpgsqlCommand cmd = cnx.CreateCommand ()) {
cmd.CommandText =
"select id,creation,prdref,params from commandes where @user = clientname and applicationname = @app";
- cmd.Parameters.Add ("@user", username);
- cmd.Parameters.Add ("@app", this.ApplicationName);
+ cmd.Parameters.AddWithValue ("@user", username);
+ cmd.Parameters.AddWithValue ("@app", this.ApplicationName);
cnx.Open ();
using (NpgsqlDataReader rdr = cmd.ExecuteReader ()) {
while (rdr.Read ()) {
@@ -249,7 +249,7 @@ namespace Yavsc
cmd.CommandText =
"select _id from estimate where client = @uname or username = @uname";
- cmd.Parameters.Add ("@uname", username);
+ cmd.Parameters.AddWithValue ("@uname", username);
cnx.Open ();
List ests = new List ();
using (NpgsqlDataReader rdr = cmd.ExecuteReader ()) {
@@ -283,11 +283,11 @@ namespace Yavsc
cmd.CommandText += "client = @clid";
if (responsible != null)
cmd.CommandText += " and ";
- cmd.Parameters.Add ("@clid", client);
+ cmd.Parameters.AddWithValue ("@clid", client);
}
if (responsible != null) {
cmd.CommandText += "username = @resp";
- cmd.Parameters.Add ("@resp", responsible);
+ cmd.Parameters.AddWithValue ("@resp", responsible);
}
cnx.Open ();
@@ -314,7 +314,7 @@ namespace Yavsc
cmd.CommandText =
"delete from writtings where _id = @wrid";
- cmd.Parameters.Add ("@wrid", wrid);
+ cmd.Parameters.AddWithValue ("@wrid", wrid);
cnx.Open ();
cmd.ExecuteNonQuery ();
}
@@ -332,7 +332,7 @@ namespace Yavsc
cmd.CommandText =
"delete from estimate where _id = @estid";
- cmd.Parameters.Add ("@estid", estid);
+ cmd.Parameters.AddWithValue ("@estid", estid);
cnx.Open ();
cmd.ExecuteNonQuery ();
}
@@ -351,7 +351,7 @@ namespace Yavsc
cmd.CommandText =
"select title,username,client,description from estimate where _id = @estid";
- cmd.Parameters.Add ("@estid", estimid);
+ cmd.Parameters.AddWithValue ("@estid", estimid);
cnx.Open ();
Estimate est = null;
using (NpgsqlDataReader rdr = cmd.ExecuteReader ()) {
@@ -372,7 +372,7 @@ namespace Yavsc
est.Description = rdr.GetString (index);
est.Id = estimid;
using (NpgsqlCommand cmdw = new NpgsqlCommand ("select _id, productid, ucost, count, description from writtings where estimid = @estid", cnx)) {
- cmdw.Parameters.Add("@estid", estimid);
+ cmdw.Parameters.AddWithValue("@estid", estimid);
using (NpgsqlDataReader rdrw = cmdw.ExecuteReader ()) {
List lw = null;
if (rdrw.HasRows) {
@@ -422,11 +422,11 @@ namespace Yavsc
"count = @count, " +
"productid = @prdid " +
"where _id = @wrid";
- cmd.Parameters.Add ("@wrid", wr.Id);
- cmd.Parameters.Add ("@desc", wr.Description);
- cmd.Parameters.Add ("@ucost", wr.UnitaryCost);
- cmd.Parameters.Add ("@prdid", wr.ProductReference);
- cmd.Parameters.Add ("@count", wr.Count);
+ cmd.Parameters.AddWithValue ("@wrid", wr.Id);
+ cmd.Parameters.AddWithValue ("@desc", wr.Description);
+ cmd.Parameters.AddWithValue ("@ucost", wr.UnitaryCost);
+ cmd.Parameters.AddWithValue ("@prdid", wr.ProductReference);
+ cmd.Parameters.AddWithValue ("@count", wr.Count);
cnx.Open ();
cmd.ExecuteNonQuery ();
cnx.Close ();
@@ -445,11 +445,11 @@ namespace Yavsc
cmd.CommandText =
"update estimate set title = @tit, username = @un, " +
"description = @descr, client = @cli where _id = @estid";
- cmd.Parameters.Add ("@tit", estim.Title);
- cmd.Parameters.Add ("@un", estim.Responsible);
- cmd.Parameters.Add ("@descr", estim.Description);
- cmd.Parameters.Add ("@cli", estim.Client);
- cmd.Parameters.Add ("@estid", estim.Id);
+ cmd.Parameters.AddWithValue ("@tit", estim.Title);
+ cmd.Parameters.AddWithValue ("@un", estim.Responsible);
+ cmd.Parameters.AddWithValue ("@descr", estim.Description);
+ cmd.Parameters.AddWithValue ("@cli", estim.Client);
+ cmd.Parameters.AddWithValue ("@estid", estim.Id);
cnx.Open ();
cmd.ExecuteNonQuery ();
cnx.Close ();
@@ -472,12 +472,12 @@ namespace Yavsc
using (NpgsqlCommand cmd = cnx.CreateCommand ()) {
cmd.CommandText =
"insert into writtings (description, estimid, ucost, count, productid) VALUES (@dscr,@estid,@ucost,@count,@prdid) returning _id";
- cmd.Parameters.Add ("@dscr", desc);
- cmd.Parameters.Add("@estid", estid);
+ cmd.Parameters.AddWithValue ("@dscr", desc);
+ cmd.Parameters.AddWithValue("@estid", estid);
- cmd.Parameters.Add("@ucost", ucost);
- cmd.Parameters.Add("@count", count);
- cmd.Parameters.Add("@prdid", productid);
+ cmd.Parameters.AddWithValue("@ucost", ucost);
+ cmd.Parameters.AddWithValue("@count", count);
+ cmd.Parameters.AddWithValue("@prdid", productid);
cnx.Open ();
long res = (long) cmd.ExecuteScalar ();
@@ -498,8 +498,8 @@ namespace Yavsc
using (NpgsqlCommand cmd = cnx.CreateCommand ()) {
cmd.CommandText =
"update writtings set description = @dscr where _id = @writid";
- cmd.Parameters.Add ("@tit", newDesc);
- cmd.Parameters.Add ("@writid", writid);
+ cmd.Parameters.AddWithValue ("@tit", newDesc);
+ cmd.Parameters.AddWithValue ("@writid", writid);
cnx.Open ();
cmd.ExecuteNonQuery ();
cnx.Close ();
@@ -522,11 +522,11 @@ namespace Yavsc
cmd.CommandText =
"insert into estimate (title,description,username,client,applicationname) " +
"values (@tit,@descr,@resp,@un,@app) returning _id";
- cmd.Parameters.Add ("@tit", title);
- cmd.Parameters.Add ("@un", client);
- cmd.Parameters.Add ("@resp", responsible);
- cmd.Parameters.Add ("@descr", description);
- cmd.Parameters.Add("@app", ApplicationName);
+ cmd.Parameters.AddWithValue ("@tit", title);
+ cmd.Parameters.AddWithValue ("@un", client);
+ cmd.Parameters.AddWithValue ("@resp", responsible);
+ cmd.Parameters.AddWithValue ("@descr", description);
+ cmd.Parameters.AddWithValue("@app", ApplicationName);
cnx.Open ();
Estimate created = new Estimate ();
created.Id = (long)cmd.ExecuteScalar ();
diff --git a/WorkFlowProvider/NpgsqlContentProvider.csproj b/WorkFlowProvider/NpgsqlContentProvider.csproj
index e3109a37..916cc466 100644
--- a/WorkFlowProvider/NpgsqlContentProvider.csproj
+++ b/WorkFlowProvider/NpgsqlContentProvider.csproj
@@ -32,7 +32,6 @@
-
@@ -44,6 +43,12 @@
+
+ ..\packages\Npgsql.2.2.5\lib\net45\Mono.Security.dll
+
+
+ ..\packages\Npgsql.2.2.5\lib\net45\Npgsql.dll
+
@@ -56,4 +61,7 @@
YavscModel
+
+
+
\ No newline at end of file
diff --git a/WorkFlowProvider/packages.config b/WorkFlowProvider/packages.config
new file mode 100644
index 00000000..f5cffebe
--- /dev/null
+++ b/WorkFlowProvider/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/google-services.json b/google-services.json
new file mode 100644
index 00000000..c0f09126
--- /dev/null
+++ b/google-services.json
@@ -0,0 +1 @@
+{"project_info":{"project_id":"yavsc-001","project_number":"325408689282","name":"Yavsc"},"client":[{"client_info":{"client_id":"android:fr.pschneider.android.wearable.speedtracker","client_type":1,"android_client_info":{"package_name":"fr.pschneider.android.wearable.speedtracker"}},"oauth_client":[],"services":{"analytics_service":{"status":1},"cloud_messaging_service":{"status":2,"apns_config":[]},"appinvite_service":{"status":1,"other_platform_oauth_client":[]},"google_signin_service":{"status":1},"ads_service":{"status":1}}}]}
\ No newline at end of file
diff --git a/plugins/fortune/MyClass.cs b/plugins/fortune/MyClass.cs
index 19e85300..1fdc5f5f 100644
--- a/plugins/fortune/MyClass.cs
+++ b/plugins/fortune/MyClass.cs
@@ -2,7 +2,6 @@
using Yavsc.Model;
using System.Configuration;
using System.Text;
-using System.Web.Mvc;
using System.Collections.Generic;
namespace fortune
diff --git a/web/ApiControllers/Calendar/CalendarController.cs b/web/ApiControllers/Calendar/CalendarController.cs
index 86710f92..9cf2eacd 100644
--- a/web/ApiControllers/Calendar/CalendarController.cs
+++ b/web/ApiControllers/Calendar/CalendarController.cs
@@ -1,5 +1,5 @@
//
-// NightFlashController.cs
+// CalendarController.cs
//
// Author:
// Paul Schneider
@@ -22,6 +22,12 @@ using System;
using System.Web.Http;
using System.ComponentModel.DataAnnotations;
using Yavsc.ApiControllers.Calendar.Model;
+using Yavsc.Helpers;
+using System.ComponentModel;
+using Yavsc.Model;
+using System.Web.Security;
+using System.Web.Profile;
+using System.Web.Http.ModelBinding;
namespace Yavsc.ApiControllers.Calendar
{
@@ -30,6 +36,44 @@ namespace Yavsc.ApiControllers.Calendar
///
public class CalendarController: ApiController
{
+ YaEvent[] getTestList()
+ {
+ return new YaEvent[] {
+ new YaEvent () {
+ Description = "Test Descr",
+ Title = "Night club special bubble party",
+ Location = new Position () {
+ Longitude = 0,
+ Latitude = 0
+ }
+ },
+ new YaEvent () {
+ Title = "Test2",
+ ImgLocator = "http://bla/im.png",
+ Location = new Position () {
+ Longitude = 0,
+ Latitude = 0
+ }
+ },
+ new YaEvent () {
+ Description = "Test Descr",
+ Title = "Night club special bubble party",
+ Location = new Position () {
+ Longitude = 0,
+ Latitude = 0
+ }
+ },
+ new YaEvent () {
+ Title = "Test2",
+ ImgLocator = "http://bla/im.png",
+ Location = new Position () {
+ Longitude = 0,
+ Latitude = 0
+ }
+ }
+ };
+ }
+
///
/// List events according the specified search arguments.
///
@@ -38,40 +82,7 @@ namespace Yavsc.ApiControllers.Calendar
[HttpGet]
public YaEvent[] List ([FromUri] PositionAndKeyphrase args)
{
- return new YaEvent[] {
- new YaEvent () {
- Description = "Test Descr",
- Title = "Night club special bubble party",
- Location = new Position() {
- Longitude = 0,
- Latitude = 0
- }
- },
- new YaEvent () {
- Title = "Test2",
- ImgLocator = "http://bla/im.png",
- Location = new Position() {
- Longitude = 0,
- Latitude = 0
- }
- },
- new YaEvent () {
- Description = "Test Descr",
- Title = "Night club special bubble party",
- Location = new Position() {
- Longitude = 0,
- Latitude = 0
- }
- },
- new YaEvent () {
- Title = "Test2",
- ImgLocator = "http://bla/im.png",
- Location = new Position() {
- Longitude = 0,
- Latitude = 0
- }
- }
- };
+ return getTestList();
}
///
@@ -119,12 +130,260 @@ namespace Yavsc.ApiControllers.Calendar
/// Ev.
public int PostEvent ([FromBody] ProvidedEvent ev)
{
- return -1;
+ throw new NotImplementedException();
+
+ }
+ ///
+ /// Notification.
+ ///
+ public class Notification {
+ ///
+ /// The title.
+ ///
+ public string title;
+ ///
+ /// The body.
+ ///
+ public string body;
+ ///
+ /// The icon.
+ ///
+ public string icon;
+ ///
+ /// The sound.
+ ///
+ public string sound;
+ ///
+ /// The tag.
+ ///
+ public string tag;
+ ///
+ /// The color.
+ ///
+ public string color;
+ ///
+ /// The click action.
+ ///
+ public string click_action;
+
}
+ // https://gcm-http.googleapis.com/gcm/send
+ ///
+ /// Message with payload.
+ ///
+ public class MessageWithPayload {
+ ///
+ /// To.
+ ///
+ public string to;
+ ///
+ /// The registration identifiers.
+ ///
+ public string [] registration_ids;
+ ///
+ /// The data.
+ ///
+ public T[] data ;
+ ///
+ /// The notification.
+ ///
+ public Notification notification;
+ ///
+ /// The collapse key.
+ ///
+ public string collapse_key; // in order to collapse ...
+ ///
+ /// The priority.
+ ///
+ public int priority; // between 0 and 10, 10 is the lowest!
+ ///
+ /// The content available.
+ ///
+ public bool content_available;
+ ///
+ /// The delay while idle.
+ ///
+ public bool delay_while_idle;
+ ///
+ /// The time to live.
+ ///
+ public int time_to_live; // seconds
+ ///
+ /// The name of the restricted package.
+ ///
+ public string restricted_package_name;
+ ///
+ /// The dry run.
+ ///
+ public bool dry_run;
+ ///
+ /// Validate the specified modelState.
+ ///
+ /// Model state.
+ public void Validate(ModelStateDictionary modelState) {
+ if (to==null && registration_ids == null) {
+ modelState.AddModelError ("to", "One of \"to\" or \"registration_ids\" parameters must be specified");
+ modelState.AddModelError ("registration_ids", "*");
+ }
+ if (notification == null && data == null) {
+ modelState.AddModelError ("notification", "At least one of \"notification\" or \"data\" parameters must be specified");
+ modelState.AddModelError ("data", "*");
+ }
+ if (notification != null) {
+ if (notification.icon == null)
+ modelState.AddModelError ("notification.icon", "please, specify an icon resoure name");
+ if (notification.title == null)
+ modelState.AddModelError ("notification.title", "please, specify a title");
+ }
+ }
+ }
+
+ ///
+ /// Message with payload response.
+ ///
+ public class MessageWithPayloadResponse {
+ ///
+ /// The multicast identifier.
+ ///
+ public int multicast_id;
+ ///
+ /// The success count.
+ ///
+ public int success;
+ ///
+ /// The failure count.
+ ///
+ public int failure;
+ ///
+ /// The canonical identifiers... ?!?
+ ///
+ public int canonical_ids;
+ ///
+ /// Detailled result.
+ ///
+ public class Result {
+ ///
+ /// The message identifier.
+ ///
+ public string message_id;
+ ///
+ /// The registration identifier.
+ ///
+ public string registration_id;
+ ///
+ /// The error.
+ ///
+ public string error;
+ }
+
+ ///
+ /// The results.
+ ///
+ public Result [] results;
+ }
+
+ ///
+ /// GCM register model.
+ ///
+ public class GCMRegisterModel {
+ ///
+ /// Gets or sets the name of the user.
+ ///
+ /// The name of the user.
+ [Localizable(true)]
+ [Display(ResourceType=typeof(LocalizedText),Name="UserName")]
+ [Required(ErrorMessage = "S'il vous plait, entrez un nom d'utilisateur")]
+ public string UserName { get; set; }
+
+ ///
+ /// Gets or sets the password.
+ ///
+ /// The password.
+ [DisplayName("Mot de passe")]
+ [Required(ErrorMessage = "S'il vous plait, entez un mot de passe")]
+ public string Password { get; set; }
+
+ ///
+ /// Gets or sets the email.
+ ///
+ /// The email.
+ [DisplayName("Adresse e-mail")]
+ [Required(ErrorMessage = "S'il vous plait, entrez un e-mail valide")]
+ public string Email { get; set; }
+
+ ///
+ /// Gets or sets the registration identifier against Google Clood Messaging and their info on this application.
+ ///
+ /// The registration identifier.
+ public string RegistrationId { get; set; }
+
+ }
+
+ ///
+ /// Registers with push notifications enabled.
+ ///
+ /// Model.
+ [ValidateAjax]
+ public void RegisterWithPushNotifications(GCMRegisterModel model)
+ {
+ if (ModelState.IsValid) {
+ MembershipCreateStatus mcs;
+ var user = Membership.CreateUser (
+ model.UserName,
+ model.Password,
+ model.Email,
+ null,
+ null,
+ false,
+ out mcs);
+ switch (mcs) {
+ case MembershipCreateStatus.DuplicateEmail:
+ ModelState.AddModelError ("Email", "Cette adresse e-mail correspond " +
+ "à un compte utilisateur existant");
+ break;
+ case MembershipCreateStatus.DuplicateUserName:
+ ModelState.AddModelError ("UserName", "Ce nom d'utilisateur est " +
+ "déjà enregistré");
+ break;
+ case MembershipCreateStatus.Success:
+ YavscHelpers.SendActivationEmail (user);
+ // TODO set registration id
+ throw new NotImplementedException ();
+ }
+ }
+ }
+
+ ///
+ /// Sets the registration identifier.
+ ///
+ /// Registration identifier.
[Authorize]
- void NotifyEvent(EventPub evpub) {
- throw new NotImplementedException();
+ public void SetRegistrationId(string registrationId)
+ {
+ // TODO set registration id
+ setRegistrationId (Membership.GetUser ().UserName, registrationId);
+ }
+
+ private void setRegistrationId(string username, string regid) {
+ ProfileBase pr = ProfileBase.Create(username);
+ pr.SetPropertyValue ("gregid", regid);
+ }
+
+ ///
+ /// Notifies the event.
+ ///
+ /// Evpub.
+ public MessageWithPayloadResponse NotifyEvent(EventPub evpub) {
+ SimpleJsonPostMethod,MessageWithPayloadResponse> r =
+ new SimpleJsonPostMethod,MessageWithPayloadResponse>(
+ "https://gcm-http.googleapis.com/gcm/send");
+ using (r) {
+ var msg = new MessageWithPayload () { data = new YaEvent[] { (YaEvent)evpub } };
+ msg.to = string.Join (" ", Circle.Union (evpub.Circles));
+
+ return r.Invoke (msg);
+ }
}
}
}
diff --git a/web/ApiControllers/Calendar/Model/Circle.cs b/web/ApiControllers/Calendar/Model/Circle.cs
index 855397e6..71a7c5fa 100644
--- a/web/ApiControllers/Calendar/Model/Circle.cs
+++ b/web/ApiControllers/Calendar/Model/Circle.cs
@@ -1,5 +1,5 @@
//
-// NightFlashController.cs
+// Circle.cs
//
// Author:
// Paul Schneider
@@ -21,13 +21,42 @@
using System;
using System.Web.Http;
using System.ComponentModel.DataAnnotations;
+using System.Collections.Generic;
namespace Yavsc.ApiControllers.Calendar.Model
{
- class Circle
+ ///
+ /// Circle.
+ ///
+ public class Circle
{
+ ///
+ /// Gets or sets the title.
+ ///
+ /// The title.
public string Title { get; set; }
- string [] Users { get; set; }
+
+ ///
+ /// Gets or sets the users.
+ ///
+ /// The users.
+ public string [] Users { get; set; }
+
+ ///
+ /// Union the specified that.
+ ///
+ /// That.
+ public static string [] Union (Circle []those)
+ {
+ List content = new List();
+ foreach (Circle c in those) {
+ foreach (string user_name in c.Users) {
+ if (!content.Contains (user_name))
+ content.Add (user_name);
+ }
+ }
+ return content.ToArray ();
+ }
}
}
diff --git a/web/ApiControllers/Calendar/Model/EstablishmentType.cs b/web/ApiControllers/Calendar/Model/EstablishmentType.cs
deleted file mode 100644
index 2d5da9e5..00000000
--- a/web/ApiControllers/Calendar/Model/EstablishmentType.cs
+++ /dev/null
@@ -1,62 +0,0 @@
-//
-// NFEvent.cs
-//
-// Author:
-// Paul Schneider
-//
-// Copyright (c) 2015 Paul Schneider
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this program. If not, see .
-
-using System;
-using System.Web.Http;
-using System.ComponentModel.DataAnnotations;
-
-namespace Yavsc.ApiControllers.Calendar.Model
-{
- ///
- /// Establishment type.
- ///
- public enum EstablishmentType
- {
- ///
- /// The discotheque.
- ///
- Discotheque,
- ///
- /// The piano bar.
- ///
- PianoBar,
- ///
- /// The bar.
- ///
- Bar,
- ///
- /// The place publique.
- ///
- PlacePublique,
- ///
- /// The maison privee.
- ///
- MaisonPrivee,
- ///
- /// The domaine publique.
- ///
- DomainePublique,
- ///
- /// The domaine prive.
- ///
- DomainePrive
- }
-}
diff --git a/web/ApiControllers/Calendar/Model/EventPub.cs b/web/ApiControllers/Calendar/Model/EventPub.cs
index ad340995..ecd3eab6 100644
--- a/web/ApiControllers/Calendar/Model/EventPub.cs
+++ b/web/ApiControllers/Calendar/Model/EventPub.cs
@@ -1,5 +1,5 @@
//
-// NightFlashController.cs
+// EventPub.cs
//
// Author:
// Paul Schneider
@@ -22,12 +22,21 @@ using System;
using System.Web.Http;
using System.ComponentModel.DataAnnotations;
using Yavsc.ApiControllers.Calendar.Model;
+using Yavsc.Model;
namespace Yavsc.ApiControllers.Calendar.Model
{
- class EventPub: YaEvent
+ ///
+ /// Event pub.
+ ///
+ public class EventPub: YaEvent
{
- Circle[] Circles { get; set; }
+ ///
+ /// Gets or sets the circles.
+ ///
+ /// The circles.
+ [Display(ResourceType=typeof(LocalizedText),Name="Circles")]
+ public Circle[] Circles { get; set; }
}
}
diff --git a/web/ApiControllers/Calendar/Model/EventType.cs b/web/ApiControllers/Calendar/Model/EventType.cs
deleted file mode 100644
index 64187483..00000000
--- a/web/ApiControllers/Calendar/Model/EventType.cs
+++ /dev/null
@@ -1,71 +0,0 @@
-//
-// EventType.cs
-//
-// Author:
-// Paul Schneider
-//
-// Copyright (c) 2015 Paul Schneider
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Lesser General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with this program. If not, see .
-
-using System;
-using System.Web.Http;
-using System.ComponentModel.DataAnnotations;
-
-namespace Yavsc.ApiControllers.Calendar.Model
-{
- ///
- /// Event type.
- ///
- public enum EventType
- {
- ///
- /// The concert gratuit.
- ///
- ConcertGratuit,
- ///
- /// The concert prive.
- ///
- ConcertPrive,
- ///
- /// The distraciton.
- ///
- Distraciton,
- ///
- /// The rencontre.
- ///
- Rencontre,
- ///
- /// The assemblee.
- ///
- Assemblee,
- ///
- /// The reunion.
- ///
- Reunion,
- ///
- /// The bureau.
- ///
- Bureau,
- ///
- /// The manifestation.
- ///
- Manifestation,
- ///
- /// The zone de danger.
- ///
- ZoneDeDanger
- }
-
-}
diff --git a/web/ApiControllers/Calendar/Model/UserPrefs.cs b/web/ApiControllers/Calendar/Model/UserPrefs.cs
index ea185b11..48e5fe3c 100644
--- a/web/ApiControllers/Calendar/Model/UserPrefs.cs
+++ b/web/ApiControllers/Calendar/Model/UserPrefs.cs
@@ -1,5 +1,5 @@
//
-// NightFlashController.cs
+// UserPrefs.cs
//
// Author:
// Paul Schneider
@@ -28,7 +28,7 @@ namespace Yavsc.ApiControllers.Calendar.Model
class UserPrefs
{
Circle [] Circles { get; set ; }
- Dictionary MusicTypeRatings { get; set; }
+ Dictionary EventTypeRatings { get; set; }
Dictionary LocationTypeRatings { get; set; }
}
}
diff --git a/web/ApiControllers/Calendar/Model/YaEvent.cs b/web/ApiControllers/Calendar/Model/YaEvent.cs
index 58c314be..74bc4d85 100644
--- a/web/ApiControllers/Calendar/Model/YaEvent.cs
+++ b/web/ApiControllers/Calendar/Model/YaEvent.cs
@@ -22,6 +22,7 @@
using System;
using System.Web.Http;
using System.ComponentModel.DataAnnotations;
+using Yavsc.Model;
namespace Yavsc.ApiControllers.Calendar.Model
{
@@ -31,71 +32,65 @@ namespace Yavsc.ApiControllers.Calendar.Model
///
public class YaEvent
{
- ///
- /// Initializes a new instance of the class.
- ///
- public YaEvent()
- {
- this.EstabType = EstablishmentType.DomainePublique;
- this.NFEvType = EventType.Distraciton;
- }
-
- ///
- /// Gets or sets the type of the NF ev.
- ///
- /// The type of the NF ev.
- [Required]
- public EventType NFEvType { get; set; }
-
- ///
- /// Gets or sets the type of the estab.
- ///
- /// The type of the estab.
- [Required(ErrorMessage="Please, choose an establisment type.")]
- public EstablishmentType EstabType { get; set; }
///
/// The title.
///
[Required(ErrorMessage="Please, choose a .")]
+ [Display(ResourceType=typeof(LocalizedText),Name="Title")]
public string Title { get; set; }
///
/// The description.
///
- [Required(ErrorMessage="Please, choose a Description.")] public string Description { get; set; }
+ [Required(ErrorMessage="Please, choose a Description.")]
+ [Display(ResourceType=typeof(LocalizedText),Name="Description")]
+ public string Description { get; set; }
///
/// The location.
///
- [Required(ErrorMessage="Please, choose a Location.")] public Position Location { get; set; }
+ [Required(ErrorMessage="Please, choose a Location.")]
+ [Display(ResourceType=typeof(LocalizedText),Name="Location")]
+ public Position Location { get; set; }
///
/// The start date.
///
- [Required(ErrorMessage="Please, choose a Start Date.")] public DateTime StartDate { get; set; }
+ [Required(ErrorMessage="Please, choose a Start Date.")]
+ [Display(ResourceType=typeof(LocalizedText),Name="StartDate")]
+ public DateTime StartDate { get; set; }
///
/// Gets or sets the end date.
///
/// The end date.
- [Required(ErrorMessage="Please, choose an End Date.")] public DateTime EndDate { get; set; }
+ [Required(ErrorMessage="Please, choose an End Date.")]
+ [Display(ResourceType=typeof(LocalizedText),Name="EndDate")]
+ public DateTime EndDate { get; set; }
///
/// The name of the NF provider.
///
- [Required(ErrorMessage="Please, choose a Nigth Flash Provider Name.")] public string NFProviderName { get; set; }
+ [Required(ErrorMessage="Please, choose a Provider Name.")]
+ [Display(ResourceType=typeof(LocalizedText),Name="ProviderName")]
+ public string ProviderName { get; set; }
///
/// The NF provider identifier.
///
- [Required(ErrorMessage="Please, choose a Night Flash Provider Identifier.")] public string NFProviderId { get; set; }
+ [Required(ErrorMessage="Please, choose a Provider Identifier.")]
+ [Display(ResourceType=typeof(LocalizedText),Name="ProviderId")]
+ public string ProviderId { get; set; }
///
/// The promotion code.
///
- public string PromotionCode { get; set; }
+ [Display(ResourceType=typeof(LocalizedText),Name="Comment")]
+ public string Comment { get; set; }
///
/// The event web page.
///
+ [Display(ResourceType=typeof(LocalizedText),Name="EventWebPage")]
public string EventWebPage { get; set; }
///
/// The image locator.
- /// -
+ ///
+ [Display(ResourceType=typeof(LocalizedText),Name="ImgLocator")]
public string ImgLocator { get; set; }
}
}
diff --git a/web/Controllers/FileSystemController.cs b/web/Controllers/FileSystemController.cs
index 476872fc..8cc59001 100644
--- a/web/Controllers/FileSystemController.cs
+++ b/web/Controllers/FileSystemController.cs
@@ -13,29 +13,18 @@ namespace Yavsc.Controllers
///
/// File system controller.
///
+
public class FileSystemController : Controller
{
- ///
- /// Gets the users base directory.
- ///
- /// The users dir.
- public string RootDir {
- get {
- return mgr.Prefix;
- }
- }
-
- FileSystemManager mgr = null ;
///
/// Initialize the specified requestContext.
///
/// Request context.
+ [Authorize]
protected override void Initialize (System.Web.Routing.RequestContext requestContext)
{
base.Initialize (requestContext);
- mgr = new FileSystemManager (
- string.Format("~/users/{0}",Membership.GetUser().UserName));
}
///
@@ -44,7 +33,10 @@ namespace Yavsc.Controllers
[Authorize]
public ActionResult Index (string id)
{
- return View (mgr.GetFiles (id));
+ FileSystemManager fsmgr = new FileSystemManager ();
+ var files = fsmgr.GetFiles (id);
+ files.Owner = Membership.GetUser ().UserName;
+ return View (files);
}
///
@@ -53,6 +45,7 @@ namespace Yavsc.Controllers
/// Identifier.
public ActionResult Details (string id)
{
+
foreach (char x in Path.GetInvalidPathChars()) {
if (id.Contains (x)) {
ViewData ["Message"] =
@@ -62,10 +55,19 @@ namespace Yavsc.Controllers
return RedirectToAction ("Index");
}
}
- FileInfo fi = mgr.FileInfo (id);
-
- ViewData ["Content"] = Url.Content (fi.FullName);
+ FileSystemManager fsmgr = new FileSystemManager ();
+ FileInfo fi = fsmgr.FileInfo (id);
+ ViewData ["id"] = id;
+ // TODO : ensure that we use the default port for
+ // the used sheme
+ ViewData ["url"] =
+ string.Format(
+ "{0}://{1}/users/{2}/{3}",
+ Request.Url.Scheme,
+ Request.Url.Authority,
+ Membership.GetUser ().UserName ,
+ id );
return View (fi);
}
@@ -77,16 +79,10 @@ namespace Yavsc.Controllers
[Authorize]
public ActionResult Create (string id)
{
- mgr.Put ( id, Request.Files);
- return View ("Index",mgr.GetFiles(id));
+ FileSystemManager fsmgr = new FileSystemManager ();
+ return View ("Index",fsmgr.GetFiles(id));
}
- ///
- /// Gets the user's base dir.
- ///
- /// The base dir.
- public string UserBaseDir { get { return Path.Combine (RootDir, Membership.GetUser ().UserName); } }
-
///
/// Edit the specified id.
///
diff --git a/web/Controllers/FrontOfficeController.cs b/web/Controllers/FrontOfficeController.cs
index 92bbd620..836201d5 100644
--- a/web/Controllers/FrontOfficeController.cs
+++ b/web/Controllers/FrontOfficeController.cs
@@ -12,6 +12,7 @@ using System.Web.Security;
using System.Threading;
using Yavsc.Model.FrontOffice;
using Yavsc.Model.FileSystem;
+using Yavsc.ApiControllers.Calendar.Model;
namespace Yavsc.Controllers
{
@@ -43,7 +44,10 @@ namespace Yavsc.Controllers
{
return View ();
}
-
+ public ActionResult EventPub (EventPub model)
+ {
+ return View (model);
+ }
///
/// Estimates this instance.
///
diff --git a/web/Models/App.master b/web/Models/App.master
index 06b8e660..fbb0fb7c 100644
--- a/web/Models/App.master
+++ b/web/Models/App.master
@@ -60,6 +60,11 @@ ViewState["orgtitle"] = T.GetString(Page.Title);