Browse Source

Optimization

Vova Tkach 6 years ago
parent
commit
1f4d17f626

+ 5 - 1
engine/wrapper/wrapper.go

@@ -20,6 +20,10 @@ import (
 	"github.com/vladimirok5959/golang-server-sessions/session"
 )
 
+type Tx = sql.Tx
+
+var ErrNoRows = sql.ErrNoRows
+
 type Wrapper struct {
 	l *logger.Logger
 	W http.ResponseWriter
@@ -236,7 +240,7 @@ func (this *Wrapper) RenderBackEnd(tcont []byte, data interface{}) {
 	this.W.Write(tpl.Bytes())
 }
 
-func (this *Wrapper) DBTrans(queries func(tx *sql.Tx) error) error {
+func (this *Wrapper) DBTrans(queries func(tx *Tx) error) error {
 	if queries == nil {
 		return errors.New("queries is not set for transaction")
 	}

+ 1 - 4
modules/module_blog_act_delete.go

@@ -1,9 +1,6 @@
 package modules
 
 import (
-	"database/sql"
-	_ "github.com/go-sql-driver/mysql"
-
 	"golang-fave/engine/wrapper"
 	"golang-fave/utils"
 )
@@ -21,7 +18,7 @@ func (this *Modules) RegisterAction_BlogDelete() *Action {
 			return
 		}
 
-		if err := wrap.DBTrans(func(tx *sql.Tx) error {
+		if err := wrap.DBTrans(func(tx *wrapper.Tx) error {
 			// Delete target post with category connection data
 			if _, err := tx.Exec("DELETE FROM blog_posts WHERE id = ?;", pf_id); err != nil {
 				return err

+ 2 - 5
modules/module_blog_act_modify.go

@@ -1,9 +1,6 @@
 package modules
 
 import (
-	"database/sql"
-	_ "github.com/go-sql-driver/mysql"
-
 	"errors"
 	"strings"
 
@@ -47,7 +44,7 @@ func (this *Modules) RegisterAction_BlogModify() *Action {
 		}
 
 		if pf_id == "0" {
-			if err := wrap.DBTrans(func(tx *sql.Tx) error {
+			if err := wrap.DBTrans(func(tx *wrapper.Tx) error {
 				// Insert row
 				res, err := tx.Exec(
 					`INSERT INTO blog_posts SET
@@ -114,7 +111,7 @@ func (this *Modules) RegisterAction_BlogModify() *Action {
 
 			wrap.Write(`window.location='/cp/blog/';`)
 		} else {
-			if err := wrap.DBTrans(func(tx *sql.Tx) error {
+			if err := wrap.DBTrans(func(tx *wrapper.Tx) error {
 				// Update row
 				if _, err := tx.Exec(
 					`UPDATE blog_posts SET

+ 1 - 4
modules/module_blog_categories_act_delete.go

@@ -1,9 +1,6 @@
 package modules
 
 import (
-	"database/sql"
-	_ "github.com/go-sql-driver/mysql"
-
 	"golang-fave/engine/wrapper"
 	"golang-fave/utils"
 )
@@ -21,7 +18,7 @@ func (this *Modules) RegisterAction_BlogCategoriesDelete() *Action {
 			return
 		}
 
-		err := wrap.DBTrans(func(tx *sql.Tx) error {
+		err := wrap.DBTrans(func(tx *wrapper.Tx) error {
 			if _, err := tx.Exec("SELECT @ml := lft, @mr := rgt FROM blog_cats WHERE id = ?;", pf_id); err != nil {
 				return err
 			}

+ 3 - 6
modules/module_blog_categories_act_modify.go

@@ -1,15 +1,12 @@
 package modules
 
 import (
-	"database/sql"
-	_ "github.com/go-sql-driver/mysql"
-
 	"golang-fave/engine/wrapper"
 	"golang-fave/utils"
 )
 
 func (this *Modules) blog_ActionCategoryAdd(wrap *wrapper.Wrapper, pf_id, pf_name, pf_alias, pf_parent string) error {
-	return wrap.DBTrans(func(tx *sql.Tx) error {
+	return wrap.DBTrans(func(tx *wrapper.Tx) error {
 		if _, err := tx.Exec("SELECT @mr := rgt FROM blog_cats WHERE id = ?;", pf_parent); err != nil {
 			return err
 		}
@@ -34,7 +31,7 @@ func (this *Modules) blog_ActionCategoryUpdate(wrap *wrapper.Wrapper, pf_id, pf_
 
 	if utils.StrToInt(pf_parent) == parentId {
 		// If parent not changed, just update category data
-		return wrap.DBTrans(func(tx *sql.Tx) error {
+		return wrap.DBTrans(func(tx *wrapper.Tx) error {
 			if _, err := tx.Exec(`
 				UPDATE blog_cats SET
 					name = ?,
@@ -54,7 +51,7 @@ func (this *Modules) blog_ActionCategoryUpdate(wrap *wrapper.Wrapper, pf_id, pf_
 	}
 
 	// Parent is changed, move category to new parent
-	return wrap.DBTrans(func(tx *sql.Tx) error {
+	return wrap.DBTrans(func(tx *wrapper.Tx) error {
 		// Shift
 		if _, err := tx.Exec("SELECT @ml := lft, @mr := rgt FROM blog_cats WHERE id = ?;", pf_id); err != nil {
 			return err

+ 3 - 6
modules/module_index.go

@@ -1,9 +1,6 @@
 package modules
 
 import (
-	"database/sql"
-	_ "github.com/go-sql-driver/mysql"
-
 	"html"
 	"net/http"
 
@@ -61,11 +58,11 @@ func (this *Modules) RegisterModule_Index() *Module {
 			&row.A_datetime,
 			&row.A_active,
 		)
-		if err != nil && err != sql.ErrNoRows {
+		if err != nil && err != wrapper.ErrNoRows {
 			// System error 500
 			utils.SystemErrorPageEngine(wrap.W, err)
 			return
-		} else if err == sql.ErrNoRows {
+		} else if err == wrapper.ErrNoRows {
 			// User error 404 page
 			wrap.RenderFrontEnd("404", fetdata.New(wrap, nil, true), http.StatusNotFound)
 			return
@@ -415,7 +412,7 @@ func (this *Modules) RegisterAction_IndexDelete() *Action {
 			return
 		}
 
-		err := wrap.DBTrans(func(tx *sql.Tx) error {
+		err := wrap.DBTrans(func(tx *wrapper.Tx) error {
 			if _, err := tx.Exec("DELETE FROM pages WHERE id = ?;", pf_id); err != nil {
 				return err
 			}

+ 1 - 4
modules/module_users_act_delete.go

@@ -1,9 +1,6 @@
 package modules
 
 import (
-	"database/sql"
-	_ "github.com/go-sql-driver/mysql"
-
 	"golang-fave/engine/wrapper"
 	"golang-fave/utils"
 )
@@ -21,7 +18,7 @@ func (this *Modules) RegisterAction_UsersDelete() *Action {
 			return
 		}
 
-		err := wrap.DBTrans(func(tx *sql.Tx) error {
+		err := wrap.DBTrans(func(tx *wrapper.Tx) error {
 			if _, err := tx.Exec("UPDATE blog_cats SET user = 1 WHERE user = ?;", pf_id); err != nil {
 				return err
 			}