bak.blog.go 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. package fetdata
  2. // import (
  3. // "math"
  4. // "strconv"
  5. // "strings"
  6. // "golang-fave/engine/sqlw"
  7. // "golang-fave/utils"
  8. // )
  9. // func (this *FERData) postsGetCount(buf string, cat int) (int, int) {
  10. // if cat == 0 {
  11. // var num int
  12. // if err := this.wrap.DB.QueryRow(`
  13. // SELECT
  14. // COUNT(*)
  15. // FROM
  16. // blog_posts
  17. // WHERE
  18. // active = 1
  19. // ;
  20. // `).Scan(&num); err == nil {
  21. // pear_page := 2
  22. // max_pages := int(math.Ceil(float64(num) / float64(pear_page)))
  23. // curr_page := 1
  24. // p := this.wrap.R.URL.Query().Get("p")
  25. // if p != "" {
  26. // pi, err := strconv.Atoi(p)
  27. // if err != nil {
  28. // curr_page = 1
  29. // } else {
  30. // if pi < 1 {
  31. // curr_page = 1
  32. // } else if pi > max_pages {
  33. // curr_page = max_pages
  34. // } else {
  35. // curr_page = pi
  36. // }
  37. // }
  38. // }
  39. // limit_offset := curr_page*pear_page - pear_page
  40. // return limit_offset, pear_page
  41. // }
  42. // } else {
  43. // var num int
  44. // if err := this.wrap.DB.QueryRow(`
  45. // SELECT
  46. // COUNT(blog_posts.id)
  47. // FROM
  48. // blog_posts
  49. // LEFT JOIN blog_cat_post_rel ON blog_cat_post_rel.post_id = blog_posts.id
  50. // WHERE
  51. // blog_posts.active = 1 AND
  52. // blog_cat_post_rel.category_id = ?
  53. // ;
  54. // `, cat).Scan(&num); err == nil {
  55. // pear_page := 2
  56. // max_pages := int(math.Ceil(float64(num) / float64(pear_page)))
  57. // curr_page := 1
  58. // p := this.wrap.R.URL.Query().Get("p")
  59. // if p != "" {
  60. // pi, err := strconv.Atoi(p)
  61. // if err != nil {
  62. // curr_page = 1
  63. // } else {
  64. // if pi < 1 {
  65. // curr_page = 1
  66. // } else if pi > max_pages {
  67. // curr_page = max_pages
  68. // } else {
  69. // curr_page = pi
  70. // }
  71. // }
  72. // }
  73. // limit_offset := curr_page*pear_page - pear_page
  74. // return limit_offset, pear_page
  75. // }
  76. // }
  77. // return 0, 0
  78. // }
  79. // func (this *FERData) postsToBuffer(buf string, cat int, order string) {
  80. // if this.bufferPosts == nil {
  81. // this.bufferPosts = map[string][]*BlogPost{}
  82. // }
  83. // if _, ok := this.bufferPosts[buf]; !ok {
  84. // var posts []*BlogPost
  85. // limit_offset, pear_page := this.postsGetCount(buf, cat)
  86. // var rows *sqlw.Rows
  87. // var err error
  88. // if cat == 0 {
  89. // rows, err = this.wrap.DB.Query(`
  90. // SELECT
  91. // blog_posts.id,
  92. // blog_posts.user,
  93. // blog_posts.name,
  94. // blog_posts.alias,
  95. // blog_posts.content,
  96. // UNIX_TIMESTAMP(blog_posts.datetime) AS datetime,
  97. // blog_posts.active
  98. // FROM
  99. // blog_posts
  100. // WHERE
  101. // blog_posts.active = 1
  102. // ORDER BY
  103. // blog_posts.id `+order+`
  104. // LIMIT ?, ?;
  105. // `, limit_offset, pear_page)
  106. // } else {
  107. // rows, err = this.wrap.DB.Query(`
  108. // SELECT
  109. // blog_posts.id,
  110. // blog_posts.user,
  111. // blog_posts.name,
  112. // blog_posts.alias,
  113. // blog_posts.content,
  114. // UNIX_TIMESTAMP(blog_posts.datetime) AS datetime,
  115. // blog_posts.active
  116. // FROM
  117. // blog_posts
  118. // LEFT JOIN blog_cat_post_rel ON blog_cat_post_rel.post_id = blog_posts.id
  119. // WHERE
  120. // blog_posts.active = 1 AND
  121. // blog_cat_post_rel.category_id = ?
  122. // ORDER BY
  123. // blog_posts.id `+order+`
  124. // LIMIT ?, ?;
  125. // `, cat, limit_offset, pear_page)
  126. // }
  127. // if err == nil {
  128. // var f_id int
  129. // var f_user int
  130. // var f_name string
  131. // var f_alias string
  132. // var f_content string
  133. // var f_datetime int
  134. // var f_active int
  135. // for rows.Next() {
  136. // err = rows.Scan(&f_id, &f_user, &f_name, &f_alias, &f_content, &f_datetime, &f_active)
  137. // if err == nil {
  138. // posts = append(posts, &BlogPost{
  139. // id: f_id,
  140. // user: f_user,
  141. // name: f_name,
  142. // alias: f_alias,
  143. // content: f_content,
  144. // datetime: f_datetime,
  145. // active: f_active,
  146. // })
  147. // }
  148. // }
  149. // rows.Close()
  150. // }
  151. // this.bufferPosts[buf] = posts
  152. // }
  153. // }
  154. // func (this *FERData) BlogPosts() []*BlogPost {
  155. // return this.BlogPostsOrder("DESC")
  156. // }
  157. // func (this *FERData) BlogPostsOrder(order string) []*BlogPost {
  158. // posts_order := "DESC"
  159. // if strings.ToLower(order) == "asc" {
  160. // posts_order = "ASC"
  161. // }
  162. // buf := "posts_" + posts_order
  163. // this.postsToBuffer(buf, 0, posts_order)
  164. // return this.bufferPosts[buf]
  165. // }
  166. // func (this *FERData) BlogPostsOfCat(cat int) []*BlogPost {
  167. // return this.BlogPostsOfCatOrder(cat, "DESC")
  168. // }
  169. // func (this *FERData) BlogPostsOfCatOrder(cat int, order string) []*BlogPost {
  170. // posts_order := "DESC"
  171. // if strings.ToLower(order) == "asc" {
  172. // posts_order = "ASC"
  173. // }
  174. // buf := "posts_" + posts_order + "_" + utils.IntToStr(cat)
  175. // this.postsToBuffer(buf, cat, posts_order)
  176. // return this.bufferPosts[buf]
  177. // }