public List <TransitDiscussion> GetDiscussions(string ticket, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("Personal", false) }; Order[] orders = { Order.Desc("Modified") }; return(WebServiceImpl <TransitDiscussion, ManagedDiscussion, Discussion> .GetList( ticket, options, expressions, orders)); }
public List <TransitAccountGroup> GetPublicAccountGroups(string ticket, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("IsPrivate", false) }; Order[] orders = { Order.Desc("Created") }; return(WebServiceImpl <TransitAccountGroup, ManagedAccountGroup, AccountGroup> .GetList( ticket, options, expressions, orders)); }
public List <TransitAccountStory> GetAllAccountStories(string ticket, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("Publish", true) }; Order[] orders = { Order.Desc("Created") }; return(WebServiceImpl <TransitAccountStory, ManagedAccountStory, AccountStory> .GetList( ticket, options, expressions, orders)); }
public List <TransitAccountLicense> GetAccountLicenses(string ticket, int id, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("Account.Id", id) }; Order[] orders = { Order.Desc("Created") }; return(WebServiceImpl <TransitAccountLicense, ManagedAccountLicense, AccountLicense> .GetList( ticket, options, expressions, orders)); }
public List <TransitDiscussionPost> GetLatestDiscussionPostsById(string ticket, int id, ServiceQueryOptions options) { return(WebServiceImpl <TransitDiscussionPost, ManagedDiscussionPost, DiscussionPost> .GetList( ticket, options, string.Format( "SELECT DiscussionPost FROM DiscussionPost DiscussionPost WHERE DiscussionPost.DiscussionThread.Discussion.Id = {0}" + " ORDER BY DiscussionPost.Sticky DESC, DiscussionPost.Created DESC", id))); }
public List <TransitState> GetStatesByCountryId(string ticket, int id, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("Country.Id", id) }; Order[] orders = { Order.Asc("Name") }; return(WebServiceImpl <TransitState, ManagedState, State> .GetList( ticket, options, expressions, orders)); }
public List <TransitAccountGroupAccount> GetPublicAccountGroupAccountsByAccountId(string ticket, int accountid, ServiceQueryOptions options) { return(WebServiceImpl <TransitAccountGroupAccount, ManagedAccountGroupAccount, AccountGroupAccount> .GetList( ticket, options, string.Format("SELECT AccountGroupAccount FROM AccountGroupAccount AccountGroupAccount " + "WHERE AccountGroupAccount.Account.Id = {0} AND AccountGroupAccount.AccountGroup.IsPrivate = 0 " + "ORDER BY AccountGroupAccount.Created DESC", accountid))); }
public List <TransitBugNote> GetBugNotes(string ticket, int bug_id, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("Bug.Id", bug_id) }; Order[] orders = { Order.Desc("Modified") }; return(WebServiceImpl <TransitBugNote, ManagedBugNote, BugNote> .GetList( ticket, options, expressions, orders)); }
public List <TransitAccount> SearchTagWordAccounts(string ticket, string search, ServiceQueryOptions options) { MatchCollection mc = Regex.Matches(search, @"\w+"); if (mc.Count == 0) { return(null); } StringBuilder query = new StringBuilder(); query.Append("SELECT DISTINCT acct FROM Account acct, TagWordAccount twa"); query.Append(" WHERE acct.Id = twa.AccountId AND ("); StringBuilder subquery = new StringBuilder(); foreach (Match m in mc) { if (subquery.Length > 0) { subquery.Append(" OR "); } subquery.Append(string.Format("twa.TagWord.Word LIKE '%{0}%'", m.Value.ToLower())); } query.Append(subquery); query.Append(") ORDER BY acct.LastLogin DESC"); return(WebServiceImpl <TransitAccount, ManagedAccount, Account> .GetList( ticket, options, query.ToString())); }
public List <TransitBug> GetBugs(string ticket, int project_id, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("Project.Id", project_id) }; Order[] orders = { Order.Desc("Created") }; return(WebServiceImpl <TransitBug, ManagedBug, Bug> .GetList( ticket, options, expressions, orders)); }
public List <TransitDiscussionPost> SearchDiscussionPostsById(string ticket, int id, string s, ServiceQueryOptions options) { if (string.IsNullOrEmpty(s)) { return(new List <TransitDiscussionPost>()); } int maxsearchresults = 128; using (SnCore.Data.Hibernate.Session.OpenConnection()) { ISession session = SnCore.Data.Hibernate.Session.Current; maxsearchresults = ManagedConfiguration.GetValue(session, "SnCore.MaxSearchResults", 128); } return(WebServiceImpl <TransitDiscussionPost, ManagedDiscussionPost, DiscussionPost> .GetList( ticket, options, "SELECT {DiscussionPost.*} FROM DiscussionThread t, Discussion d, DiscussionPost {DiscussionPost}" + " INNER JOIN FREETEXTTABLE(DiscussionPost, ([Subject], [Body]), '" + Renderer.SqlEncode(s) + "', " + maxsearchresults.ToString() + ") AS ft " + " ON DiscussionPost.DiscussionPost_Id = ft.[KEY] " + " WHERE t.Discussion_Id = d.Discussion_Id" + " AND t.DiscussionThread_Id = DiscussionPost.DiscussionThread_Id" + " AND d.Discussion_Id = " + id.ToString() + " ORDER BY ft.[RANK] DESC", "DiscussionPost")); }
public List <TransitNeighborhood> GetNeighborhoodsByCityId(string ticket, int id, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("City.Id", id) }; Order[] orders = { Order.Asc("Name") }; return(WebServiceImpl <TransitNeighborhood, ManagedNeighborhood, Neighborhood> .GetList( ticket, options, expressions, orders)); }
public List <TransitAccountFeedItem> SearchAccountFeedItems(string ticket, string s, ServiceQueryOptions options) { if (string.IsNullOrEmpty(s)) { return(new List <TransitAccountFeedItem>()); } int maxsearchresults = 128; using (SnCore.Data.Hibernate.Session.OpenConnection()) { ISession session = SnCore.Data.Hibernate.Session.Current; maxsearchresults = ManagedConfiguration.GetValue(session, "SnCore.MaxSearchResults", 128); } StringBuilder query = new StringBuilder(); query.Append("SELECT {AccountFeedItem.*} FROM AccountFeedItem {AccountFeedItem}"); query.AppendFormat(" INNER JOIN FREETEXTTABLE(AccountFeedItem, ([Title], [Description]), '{0}', {1}) as ft ", Renderer.SqlEncode(s), maxsearchresults); query.Append(" ON AccountFeedItem.AccountFeedItem_Id = ft.[KEY] "); query.Append(" ORDER BY ft.[RANK] DESC"); return(WebServiceImpl <TransitAccountFeedItem, ManagedAccountFeedItem, AccountFeedItem> .GetList( ticket, options, query.ToString(), "AccountFeedItem")); }
public List <TransitDiscussionPost> GetDiscussionThreadPostsByOrder(string ticket, int id, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("DiscussionThread.Id", id) }; Order[] orders = { Order.Desc("Sticky"), Order.Desc("Created") }; return(WebServiceImpl <TransitDiscussionPost, ManagedDiscussionPost, DiscussionPost> .GetList( ticket, options, expressions, orders)); }
public List <TransitAccountStory> SearchAccountStories(string ticket, string s, ServiceQueryOptions options) { if (string.IsNullOrEmpty(s)) { return(new List <TransitAccountStory>()); } int maxsearchresults = 128; using (SnCore.Data.Hibernate.Session.OpenConnection()) { ISession session = SnCore.Data.Hibernate.Session.Current; maxsearchresults = ManagedConfiguration.GetValue(session, "SnCore.MaxSearchResults", 128); } StringBuilder query = new StringBuilder(); query.Append("SELECT {AccountStory.*} FROM AccountStory {AccountStory}"); query.Append(" INNER JOIN FREETEXTTABLE(AccountStory, ([Name], [Summary]), '"); query.Append(Renderer.SqlEncode(s)); query.AppendFormat("', {0}) AS ft ", maxsearchresults); query.Append(" ON AccountStory.AccountStory_Id = ft.[KEY] "); query.Append(" WHERE AccountStory.Publish = 1"); query.Append(" ORDER BY ft.[RANK] DESC"); return(WebServiceImpl <TransitAccountStory, ManagedAccountStory, AccountStory> .GetList( ticket, options, query.ToString(), "AccountStory")); }
public List <TransitAccountGroupPicture> GetAccountGroupPictures(string ticket, int groupid, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("AccountGroup.Id", groupid) }; Order[] orders = { Order.Asc("Position"), Order.Desc("Created") }; return(WebServiceImpl <TransitAccountGroupPicture, ManagedAccountGroupPicture, AccountGroupPicture> .GetList( ticket, options, expressions, orders)); }
public List <TransitAccountAuditEntry> GetAccountAuditEntriesByAccountId(string ticket, int id, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("AccountId", id) }; Order[] orders = { Order.Desc("Updated") }; return(WebServiceImpl <TransitAccountAuditEntry, ManagedAccountAuditEntry, AccountAuditEntry> .GetList( ticket, options, expressions, orders)); }
public List <TransitTagWord> GetTagWords(string ticket, TransitTagWordQueryOptions queryoptions, ServiceQueryOptions options) { StringBuilder query = new StringBuilder(); query.Append("SELECT word FROM TagWord word LEFT JOIN word.TagWordAccounts acct"); query.Append(" GROUP BY word.Id, word.Promoted, word.Excluded, word.Word"); switch (queryoptions) { case TransitTagWordQueryOptions.Excluded: query.Append(" WHERE Excluded = 1"); break; case TransitTagWordQueryOptions.New: query.Append(" WHERE Excluded = 0 and Promoted = 0"); break; case TransitTagWordQueryOptions.Promoted: query.Append(" WHERE Promoted = 1"); break; } query.Append(" ORDER BY COUNT(acct) DESC"); return(WebServiceImpl <TransitTagWord, ManagedTagWord, TagWord> .GetList( ticket, options, query.ToString())); }
public List <TransitRefererAccount> GetRefererAccounts(string ticket, ServiceQueryOptions options) { return(WebServiceImpl <TransitRefererAccount, ManagedRefererAccount, RefererAccount> .GetList( ticket, options, "SELECT {ra.*} FROM RefererAccount {ra}, RefererHost rh" + " WHERE ra.RefererHost_Id = rh.RefererHost_Id" + " ORDER BY rh.Total DESC", "ra")); }
public List <TransitBookmark> GetBookmarksWithOptions(string ticket, BookmarkQueryOptions qopt, ServiceQueryOptions options) { List <TransitBookmark> bookmarks = WebServiceImpl <TransitBookmark, ManagedBookmark, Bookmark> .GetList( ticket, null); if (qopt != null) { for (int i = bookmarks.Count - 1; i >= 0; i--) { if (qopt.WithFullBitmaps && !bookmarks[i].HasFullBitmap) { bookmarks.RemoveAt(i); continue; } if (qopt.WithLinkedBitmaps && !bookmarks[i].HasLinkBitmap) { bookmarks.RemoveAt(i); continue; } } } if (options != null) { Collection <TransitBookmark> .ApplyServiceOptions(options.FirstResult, options.PageSize, bookmarks); } return(bookmarks); }
public List <TransitCity> GetCitiesByStateId(string ticket, int id, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("State.Id", id) }; Order[] orders = { Order.Asc("Name") }; return(WebServiceImpl <TransitCity, ManagedCity, City> .GetList( ticket, options, expressions, orders)); }
public List <TransitDiscussion> GetDiscussionsByObjectId(string ticket, string typename, int id, ServiceQueryOptions options) { return(WebServiceImpl <TransitDiscussion, ManagedDiscussion, Discussion> .GetList( ticket, options, string.Format("SELECT Discussion FROM Discussion Discussion" + " WHERE Discussion.ObjectId = {0} AND Discussion.DataObject.Name = '{1}'" + " ORDER BY Discussion.Name ASC", id, Renderer.SqlEncode(typename)))); }
public List <TransitAccountFriendRequest> GetAccountFriendRequests(string ticket, int id, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("Keen.Id", id), Expression.Eq("Rejected", false) }; return(WebServiceImpl <TransitAccountFriendRequest, ManagedAccountFriendRequest, AccountFriendRequest> .GetList( ticket, options, expressions, null)); }
public List <TransitDiscussion> GetAccountDiscussions(string ticket, int id, ServiceQueryOptions options) { ICriterion[] expressions = { Expression.Eq("Personal", false), Expression.Eq("Account.Id", id) }; return(WebServiceImpl <TransitDiscussion, ManagedDiscussion, Discussion> .GetList( ticket, options, expressions, null)); }
public List <TransitDiscussionPost> GetDiscussionThreadsByDiscussionId(string ticket, int id, ServiceQueryOptions options) { return(WebServiceImpl <TransitDiscussionPost, ManagedDiscussionPost, DiscussionPost> .GetList( ticket, options, "SELECT {Post.*} FROM DiscussionPost {Post}, DiscussionThread Thread, Discussion Discussion" + " WHERE Post.DiscussionThread_Id = Thread.DiscussionThread_Id" + " AND Thread.Discussion_Id = Discussion.Discussion_Id" + " AND Discussion.Discussion_Id = " + id.ToString() + " AND Post.DiscussionPostParent_Id IS NULL" + " ORDER BY Post.Sticky DESC, Thread.Modified DESC", "Post")); }
public List <TransitAccountFriend> GetAccountFriends(string ticket, TransitAccountFriendQueryOptions qopt, ServiceQueryOptions options) { ManagedAccount account = null; using (SnCore.Data.Hibernate.Session.OpenConnection()) { ISession session = SnCore.Data.Hibernate.Session.Current; account = new ManagedAccount(session, qopt.AccountId); } return(WebServiceImpl <TransitAccountFriend, ManagedAccountFriend, AccountFriend> .GetList( ticket, options, qopt.CreateQuery(), account.GetTransformedInstanceFromAccountFriend)); }
public List <TransitAccount> GetActiveAccounts(string ticket, ServiceQueryOptions options) { return(WebServiceImpl <TransitAccount, ManagedAccount, Account> .GetList( ticket, options, "SELECT Account FROM Account Account WHERE EXISTS (" + " FROM AccountPicture AccountPicture " + " WHERE AccountPicture.Account = Account AND AccountPicture.Hidden = 0" + ") AND EXISTS (" + " FROM AccountEmail AccountEmail " + " WHERE AccountEmail.Account = Account AND " + " AccountEmail.Verified = 1" + ") ORDER BY Account.LastLogin DESC")); }
public List <TransitBug> GetBugsWithOptions(string ticket, TransitBugQueryOptions qopt, ServiceQueryOptions options) { string query = null; using (SnCore.Data.Hibernate.Session.OpenConnection()) { ISession session = SnCore.Data.Hibernate.Session.Current; query = qopt.GetQuery(session); } return(WebServiceImpl <TransitBug, ManagedBug, Bug> .GetList( ticket, options, query, "Bug")); }
public List <TransitAccount> FindRefererAccounts(string ticket, string uri, ServiceQueryOptions options) { string like = string.Format("%{0}%", Renderer.SqlEncode(uri)); return(WebServiceImpl <TransitAccount, ManagedAccount, Account> .GetList(ticket, options, "SELECT {Account.*} FROM {Account} WHERE EXISTS ( " + " SELECT AccountWebsite.AccountWebsite_Id FROM AccountWebsite AccountWebsite " + " WHERE Account.Account_Id = AccountWebsite.Account_Id AND AccountWebsite.Url LIKE '" + like + "'" + " ) OR EXISTS (" + " SELECT AccountFeed.AccountFeed_Id FROM AccountFeed AccountFeed " + " WHERE Account.Account_Id = AccountFeed.Account_Id " + " AND ( AccountFeed.LinkUrl LIKE '" + like + "' OR AccountFeed.FeedUrl LIKE '" + like + "')" + ")", "Account")); }
public List <TransitAccount> GetTagWordAccountsById(string ticket, int id, ServiceQueryOptions options) { StringBuilder query = new StringBuilder(); query.AppendFormat( "SELECT acct FROM Account acct, TagWordAccount twa " + "WHERE acct.Id = twa.AccountId " + "AND twa.TagWord.Id = {0} " + "ORDER BY acct.LastLogin DESC", id); return(WebServiceImpl <TransitAccount, ManagedAccount, Account> .GetList( ticket, options, query.ToString())); }