public NewsArticleAggregatorData fetchNewsAggregator(CmsPage page, int identifier, CmsLanguage lang, bool createIfNotExist) { if (page.ID < 0 || identifier < 0) { return(new NewsArticleAggregatorData()); } StringBuilder sql = new StringBuilder("SELECT DefaultYearToDisplay FROM "); sql.Append(TableNameAggregator); sql.Append(" WHERE PageId=" + page.ID.ToString()); sql.Append(" AND LangCode='" + lang.shortCode + "'"); sql.Append(" AND Identifier=" + identifier.ToString()); sql.Append(" AND Deleted is null;"); NewsArticleAggregatorData entity = new NewsArticleAggregatorData(); DataSet ds = this.RunSelectQuery(sql.ToString()); if (this.hasSingleRow(ds)) { DataRow dr = ds.Tables[0].Rows[0]; entity.YearToDisplay = Convert.ToInt32(dr["DefaultYearToDisplay"]); } else { if (createIfNotExist) { if (addNewsAggregator(page, identifier, lang, entity) == false) { throw new Exception("fetchNewsAggregator() database error: Error creating new placeholder"); } } else { throw new Exception("fetchNewsAggregator() database error: placeholder does not exist"); } } return(entity); }
public bool updateNewsAggregator(CmsPage page, int identifier, CmsLanguage lang, NewsArticleAggregatorData entity) { StringBuilder sql = new StringBuilder("UPDATE "); sql.Append(TableNameAggregator); sql.Append(" SET DefaultYearToDisplay = " + entity.YearToDisplay.ToString()); sql.Append(" WHERE PageId=" + page.ID.ToString()); sql.Append(" AND LangCode='" + lang.shortCode + "'"); sql.Append(" AND Identifier=" + identifier.ToString()); int affected = this.RunUpdateQuery(sql.ToString()); return(affected > 0); }
public bool addNewsAggregator(CmsPage page, int identifier, CmsLanguage lang, NewsArticleAggregatorData entity) { StringBuilder sql = new StringBuilder("INSERT INTO "); sql.Append(TableNameAggregator); sql.Append(" (PageId,Identifier,LangCode,DefaultYearToDisplay) VALUES ("); sql.Append(page.ID.ToString() + ","); sql.Append(identifier.ToString() + ",'"); sql.Append(dbEncode(lang.shortCode) + "',"); sql.Append(entity.YearToDisplay.ToString() + ");"); int affected = this.RunUpdateQuery(sql.ToString()); if (affected > 0) { return(page.setLastUpdatedDateTimeToNow()); } else { return(false); } }