mirror of
https://github.com/documize/community.git
synced 2025-07-24 15:49:44 +02:00
commit
4849dd83de
10 changed files with 646 additions and 736 deletions
|
@ -8,7 +8,7 @@ The mission is to bring software dev inspired features (refactoring, testing, li
|
|||
|
||||
## Latest version
|
||||
|
||||
v0.34.0
|
||||
v0.34.1
|
||||
|
||||
## OS Support
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<div class=" page-setup container-fluid padding-100 background-color-primary">
|
||||
<div class="page-setup container-fluid padding-100">
|
||||
<div class="row">
|
||||
<div class="col-lg-3 col-md-3 col-sm-3">
|
||||
<div>
|
||||
|
|
|
@ -1,38 +1,34 @@
|
|||
<div class="col-lg-9 col-md-9 col-sm-9">
|
||||
<div class="input-form">
|
||||
<form>
|
||||
<div class="heading">
|
||||
<div class="title">Let's setup Documize</div>
|
||||
<div class="tip">Database name is <em>{{model.dbname}}</em></div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="input-control">
|
||||
<label>Team</label>
|
||||
<div class="tip">What's your tribe called?</div>
|
||||
{{focus-input id="siteTitle" type="text" value=model.title class=(if hasEmptyTitleError 'error')}}
|
||||
</div>
|
||||
<div class="input-control">
|
||||
<label>Firstname</label>
|
||||
<div class="tip">What do people call you?</div>
|
||||
{{input id="adminFirstname" type="text" value=model.firstname class=(if hasEmptyFirstnameError 'error')}}
|
||||
</div>
|
||||
<div class="input-control">
|
||||
<label>Lastname</label>
|
||||
<div class="tip">How the government refers to you.</div>
|
||||
{{input id="adminLastname" type="text" value=model.lastname class=(if hasEmptyLastnameError 'error')}}
|
||||
</div>
|
||||
<div class="input-control">
|
||||
<label>Email</label>
|
||||
<div class="tip">No spam. Ever!</div>
|
||||
{{input id="adminEmail" type="email" value=model.email class=(if hasEmptyEmailError 'error')}}
|
||||
</div>
|
||||
<div class="input-control">
|
||||
<label>Password</label>
|
||||
<div class="tip">Something you can remember without writing it down.</div>
|
||||
{{input id="adminPassword" type="text" value=model.password class=(if hasEmptyPasswordError 'error')}}
|
||||
</div>
|
||||
<div class="regular-button button-green" {{ action 'save' }}>Go Setup</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="form-bordered">
|
||||
<div class="form-header">
|
||||
<div class="title">Let's setup Documize</div>
|
||||
<div class="tip">Database name is <em>{{model.dbname}}</em></div>
|
||||
</div>
|
||||
<div class="input-control">
|
||||
<label>Team</label>
|
||||
<div class="tip">What's your tribe called?</div>
|
||||
{{focus-input id="siteTitle" type="text" value=model.title class=(if hasEmptyTitleError 'error')}}
|
||||
</div>
|
||||
<div class="input-control">
|
||||
<label>Firstname</label>
|
||||
<div class="tip">What do people call you?</div>
|
||||
{{input id="adminFirstname" type="text" value=model.firstname class=(if hasEmptyFirstnameError 'error')}}
|
||||
</div>
|
||||
<div class="input-control">
|
||||
<label>Lastname</label>
|
||||
<div class="tip">How the government refers to you.</div>
|
||||
{{input id="adminLastname" type="text" value=model.lastname class=(if hasEmptyLastnameError 'error')}}
|
||||
</div>
|
||||
<div class="input-control">
|
||||
<label>Email</label>
|
||||
<div class="tip">No spam. Ever!</div>
|
||||
{{input id="adminEmail" type="email" value=model.email class=(if hasEmptyEmailError 'error')}}
|
||||
</div>
|
||||
<div class="input-control">
|
||||
<label>Password</label>
|
||||
<div class="tip">Something you can remember without writing it down.</div>
|
||||
{{input id="adminPassword" type="text" value=model.password class=(if hasEmptyPasswordError 'error')}}
|
||||
</div>
|
||||
<div class="regular-button button-green" {{ action 'save' }}>Setup</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "documize",
|
||||
"version": "0.33.0",
|
||||
"version": "0.34.1",
|
||||
"description": "The Document IDE",
|
||||
"private": true,
|
||||
"directories": {
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 5.5 KiB |
|
@ -118,7 +118,7 @@ func Check(Db *sqlx.DB, connectionString string) bool {
|
|||
return false
|
||||
}
|
||||
if strings.TrimSpace(flds[0]) == "0" {
|
||||
log.Error("Entering database set-up mode because the database is empty.", errors.New("no tables"))
|
||||
log.Info("Entering database set-up mode because the database is empty.....")
|
||||
web.SiteMode = web.SiteModeSetup
|
||||
return false
|
||||
}
|
||||
|
|
|
@ -87,6 +87,11 @@ func Create(w http.ResponseWriter, r *http.Request) {
|
|||
dbname := r.Form.Get("dbname")
|
||||
dbhash := r.Form.Get("dbhash")
|
||||
|
||||
fmt.Println(dbname)
|
||||
fmt.Println(dbhash)
|
||||
fmt.Println(web.SiteInfo.DBname)
|
||||
fmt.Println(web.SiteInfo.DBhash)
|
||||
|
||||
if dbname != web.SiteInfo.DBname || dbhash != web.SiteInfo.DBhash {
|
||||
log.Error("database.Create()'s security credentials error ", errors.New("bad db name or validation code"))
|
||||
return
|
||||
|
|
|
@ -9,7 +9,6 @@ CREATE TABLE IF NOT EXISTS `user` (
|
|||
`lastname` NVARCHAR(500) NOT NULL,
|
||||
`email` NVARCHAR(250) NOT NULL UNIQUE,
|
||||
`initials` NVARCHAR(10) NOT NULL DEFAULT "",
|
||||
`global` BOOL NOT NULL DEFAULT 0,
|
||||
`password` NVARCHAR(500) NOT NULL DEFAULT "",
|
||||
`salt` NVARCHAR(100) NOT NULL DEFAULT "",
|
||||
`reset` NVARCHAR(100) NOT NULL DEFAULT "",
|
||||
|
@ -131,7 +130,6 @@ CREATE TABLE IF NOT EXISTS `document` (
|
|||
`slug` NVARCHAR(2000) NOT NULL,
|
||||
`tags` NVARCHAR(1000) NOT NULL DEFAULT '',
|
||||
`template` BOOL NOT NULL DEFAULT 0,
|
||||
`layout` CHAR(10) NOT NULL DEFAULT 'doc',
|
||||
`created` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
`revised` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT pk_refid PRIMARY KEY (refid),
|
||||
|
@ -150,7 +148,6 @@ CREATE TABLE IF NOT EXISTS `page` (
|
|||
`documentid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`userid` CHAR(16) DEFAULT '' COLLATE utf8_bin,
|
||||
`contenttype` CHAR(20) NOT NULL DEFAULT 'wysiwyg',
|
||||
`pagetype` CHAR(10) NOT NULL DEFAULT 'section',
|
||||
`level` INT UNSIGNED NOT NULL,
|
||||
`sequence` DOUBLE NOT NULL,
|
||||
`title` NVARCHAR(2000) NOT NULL,
|
||||
|
@ -241,7 +238,6 @@ CREATE TABLE IF NOT EXISTS `revision` (
|
|||
`pageid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`userid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`contenttype` CHAR(20) NOT NULL DEFAULT 'wysiwyg',
|
||||
`pagetype` CHAR(10) NOT NULL DEFAULT 'section',
|
||||
`title` NVARCHAR(2000) NOT NULL,
|
||||
`body` LONGTEXT,
|
||||
`rawbody` LONGBLOB,
|
||||
|
@ -282,90 +278,3 @@ CREATE TABLE IF NOT EXISTS `userconfig` (
|
|||
UNIQUE INDEX `idx_userconfig_orguserkey` (`orgid`, `userid`, `key` ASC))
|
||||
DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
|
||||
ENGINE = InnoDB;
|
||||
|
||||
DROP TABLE IF EXISTS `share`;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `share` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`orgid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`documentid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`userid` CHAR(16) DEFAULT '' COLLATE utf8_bin,
|
||||
`email` NVARCHAR(250) NOT NULL DEFAULT '',
|
||||
`message` NVARCHAR(500) NOT NULL DEFAULT '',
|
||||
`viewed` VARCHAR(500) NOT NULL DEFAULT '',
|
||||
`secret` VARCHAR(200) NOT NULL DEFAULT '',
|
||||
`expires` CHAR(16) DEFAULT '' COLLATE utf8_bin,
|
||||
`active` BOOL NOT NULL DEFAULT 1,
|
||||
`created` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT pk_id PRIMARY KEY (id))
|
||||
DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
|
||||
ENGINE = InnoDB;
|
||||
|
||||
DROP TABLE IF EXISTS `feedback`;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `feedback` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`refid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`orgid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`documentid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`userid` CHAR(16) DEFAULT '' COLLATE utf8_bin,
|
||||
`email` NVARCHAR(250) NOT NULL DEFAULT '',
|
||||
`feedback` LONGTEXT,
|
||||
`created` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT pk_id PRIMARY KEY (id))
|
||||
DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
|
||||
ENGINE = InnoDB;
|
||||
|
||||
DROP TABLE IF EXISTS `link`;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `link` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`refid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`orgid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`folderid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`userid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`sourcedocumentid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`sourcepageid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`linktype` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`targetdocumentid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`targetid` CHAR(16) NOT NULL DEFAULT '' COLLATE utf8_bin,
|
||||
`orphan` BOOL NOT NULL DEFAULT 0,
|
||||
`created` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
`revised` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT pk_id PRIMARY KEY (id))
|
||||
DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
|
||||
ENGINE = InnoDB;
|
||||
|
||||
DROP TABLE IF EXISTS `participant`;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `participant` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`refid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`orgid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`documentid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`userid` CHAR(16) DEFAULT '' COLLATE utf8_bin,
|
||||
`roletype` CHAR(1) NOT NULL DEFAULT 'I' COLLATE utf8_bin,
|
||||
`lastviewed` TIMESTAMP NULL,
|
||||
`created` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT pk_id PRIMARY KEY (id),
|
||||
INDEX `idx_participant_documentid` (`documentid` ASC))
|
||||
DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
|
||||
ENGINE = InnoDB;
|
||||
|
||||
DROP TABLE IF EXISTS `pin`;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `pin` (
|
||||
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`refid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`orgid` CHAR(16) NOT NULL COLLATE utf8_bin,
|
||||
`userid` CHAR(16) DEFAULT '' COLLATE utf8_bin,
|
||||
`labelid` CHAR(16) DEFAULT '' COLLATE utf8_bin,
|
||||
`documentid` CHAR(16) DEFAULT '' COLLATE utf8_bin,
|
||||
`sequence` INT UNSIGNED NOT NULL DEFAULT 99,
|
||||
`pin` CHAR(20) NOT NULL DEFAULT '' COLLATE utf8_bin,
|
||||
`created` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
`revised` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
CONSTRAINT pk_id PRIMARY KEY (id),
|
||||
INDEX `idx_pin_userid` (`userid` ASC))
|
||||
DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
|
||||
ENGINE = InnoDB;
|
||||
|
|
|
@ -27,7 +27,7 @@ type ProdInfo struct {
|
|||
func Product() (p ProdInfo) {
|
||||
p.Major = "0"
|
||||
p.Minor = "34"
|
||||
p.Patch = "0"
|
||||
p.Patch = "1"
|
||||
p.Version = fmt.Sprintf("%s.%s.%s", p.Major, p.Minor, p.Patch)
|
||||
p.Edition = "Community"
|
||||
p.Title = fmt.Sprintf("%s Edition", p.Edition)
|
||||
|
|
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue