| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | package modulesimport (	"golang-fave/engine/wrapper"	"golang-fave/utils")func (this *Modules) RegisterAction_IndexFirstUser() *Action {	return this.newAction(AInfo{		WantDB: true,		Mount:  "index-first-user",	}, func(wrap *wrapper.Wrapper) {		pf_first_name := wrap.R.FormValue("first_name")		pf_last_name := wrap.R.FormValue("last_name")		pf_email := wrap.R.FormValue("email")		pf_password := wrap.R.FormValue("password")		if pf_email == "" {			wrap.MsgError(`Please specify user email`)			return		}		if !utils.IsValidEmail(pf_email) {			wrap.MsgError(`Please specify correct user email`)			return		}		if pf_password == "" {			wrap.MsgError(`Please specify user password`)			return		}		// Security, check if still need to run this action		var count int		err := wrap.DB.QueryRow(`			SELECT				COUNT(*)			FROM				users			;`,		).Scan(			&count,		)		if err != nil {			wrap.MsgError(err.Error())			return		}		if count > 0 {			wrap.MsgError(`CMS is already configured`)			return		}		_, err = wrap.DB.Exec(			`INSERT INTO users SET				id = 1,				first_name = ?,				last_name = ?,				email = ?,				password = MD5(?),				admin = 1,				active = 1			;`,			pf_first_name,			pf_last_name,			pf_email,			pf_password,		)		if err != nil {			wrap.MsgError(err.Error())			return		}		wrap.ResetCacheBlocks()		// Reload current page		wrap.Write(`window.location.reload(false);`)	})}
 |