diff --git a/client/src/campaigns/Statistics.js b/client/src/campaigns/Statistics.js index cc0d1d3d..2265638d 100644 --- a/client/src/campaigns/Statistics.js +++ b/client/src/campaigns/Statistics.js @@ -88,7 +88,7 @@ export default class Statistics extends Component { const val = entity[key] return ( - {val}{showZoomIn && } + {val}{showZoomIn && } ); } @@ -103,7 +103,7 @@ export default class Statistics extends Component { return ( - {showZoomIn && } + {showZoomIn && }
- {state => state.isDragActive ? t('dropCountFile', {count: state.draggedFiles.length}) : t('dropFilesHere')} + + {({getRootProps, getInputProps, isDragActive, draggedFiles}) => ( +
+ +

{isDragActive ? t('dropCountFile', {count: draggedFiles.length}) : t('dropFilesHere')}

+
+ )}
} diff --git a/client/src/lib/sandbox-common.scss b/client/src/lib/sandbox-common.scss index e268abb4..01c727d8 100644 --- a/client/src/lib/sandbox-common.scss +++ b/client/src/lib/sandbox-common.scss @@ -32,53 +32,59 @@ $editorNormalHeight: 800px !default; background: #f86c6b; width: 100%; height: $navbarHeight; + display: flex; + justify-content: space-between; } -.logo { - float: left; - height: $navbarHeight; - padding: 5px 0 5px 10px; - filter: brightness(0) invert(1); -} +.navbarLeft { + .logo { + display: inline-block; + height: $navbarHeight; + padding: 5px 0 5px 10px; + filter: brightness(0) invert(1); + } -.title { - padding: 5px 0 5px 10px; - font-size: 18px; - font-weight: bold; - float: left; - color: white; - height: $navbarHeight; -} - -.btn, .btnDisabled { - display: block; - float: right; - padding: 0px 15px; - line-height: $navbarHeight; - text-align: center; - font-size: 14px; - font-weight: bold; - font-family: sans-serif; - cursor: pointer; - - &, &:not([href]):not([tabindex]) { // This is to override reboot.scss in bootstrap + .title { + display: inline-block; + padding: 5px 0 5px 10px; + font-size: 18px; + font-weight: bold; + float: left; color: white; + height: $navbarHeight; } } -.btn:hover { - background-color: #c05454; - text-decoration: none; +.navbarRight { + .btn, .btnDisabled { + display: inline-block; + padding: 0px 15px; + line-height: $navbarHeight; + text-align: center; + font-size: 14px; + font-weight: bold; + font-family: sans-serif; + cursor: pointer; - &, &:not([href]):not([tabindex]) { // This is to override reboot.scss in bootstrap - color: white; - } -} - -.btnDisabled { - cursor: default; - - &, &:not([href]):not([tabindex]) { // This is to override reboot.scss in bootstrap - color: #621d1d; + &, &:not([href]):not([tabindex]) { // This is to override reboot.scss in bootstrap + color: white; + } + } + + .btn:hover { + background-color: #c05454; + text-decoration: none; + + &, &:not([href]):not([tabindex]) { // This is to override reboot.scss in bootstrap + color: white; + } + } + + .btnDisabled { + cursor: default; + + &, &:not([href]):not([tabindex]) { // This is to override reboot.scss in bootstrap + color: #621d1d; + } } } diff --git a/client/src/lib/sandboxed-ckeditor.js b/client/src/lib/sandboxed-ckeditor.js index 21b863cb..19259dd2 100644 --- a/client/src/lib/sandboxed-ckeditor.js +++ b/client/src/lib/sandboxed-ckeditor.js @@ -94,11 +94,15 @@ export class CKEditorHost extends Component { return (
- {this.state.fullscreen && } -
{this.props.title}
- - - {this.props.canSave ? : } +
+ {this.state.fullscreen && } +
{this.props.title}
+
+
+ {this.props.canSave ? : } + + +
this.contentNode = node} className={styles.host} singleToken={true} contentProps={editorData} contentSrc="ckeditor/editor" tokenMethod="ckeditor" tokenParams={editorData}/>
diff --git a/client/src/lib/sandboxed-codeeditor.js b/client/src/lib/sandboxed-codeeditor.js index b9ea9f25..7bb21fe0 100644 --- a/client/src/lib/sandboxed-codeeditor.js +++ b/client/src/lib/sandboxed-codeeditor.js @@ -88,13 +88,17 @@ export class CodeEditorHost extends Component { return (
- {this.state.fullscreen && } -
{this.props.title}
- - - - {this.props.canSave ? : } - {this.state.wrap ? 'WRAP': 'NOWRAP'} +
+ {this.state.fullscreen && } +
{this.props.title}
+
+
+ {this.state.wrap ? 'WRAP': 'NOWRAP'} + {this.props.canSave ? : } + + + +
this.contentNode = node} className={styles.host} singleToken={true} contentProps={editorData} contentSrc="codeeditor/editor" tokenMethod="codeeditor" tokenParams={tokenData}/>
diff --git a/client/src/lib/sandboxed-grapesjs.js b/client/src/lib/sandboxed-grapesjs.js index d7c3de2e..b7e4bdb9 100644 --- a/client/src/lib/sandboxed-grapesjs.js +++ b/client/src/lib/sandboxed-grapesjs.js @@ -68,11 +68,15 @@ export class GrapesJSHost extends Component { return (
- {this.state.fullscreen && } -
{this.props.title}
- - - {this.props.canSave ? : } +
+ {this.state.fullscreen && } +
{this.props.title}
+
+
+ {this.props.canSave ? : } + + +
this.contentNode = node} className={styles.host} singleToken={true} contentProps={editorData} contentSrc="grapesjs/editor" tokenMethod="grapesjs" tokenParams={tokenData}/>
diff --git a/client/src/lib/sandboxed-mosaico.js b/client/src/lib/sandboxed-mosaico.js index ce0c4271..6a9281fe 100644 --- a/client/src/lib/sandboxed-mosaico.js +++ b/client/src/lib/sandboxed-mosaico.js @@ -71,11 +71,15 @@ export class MosaicoHost extends Component { return (
- {this.state.fullscreen && } -
{this.props.title}
- - - {this.props.canSave ? : } +
+ {this.state.fullscreen && } +
{this.props.title}
+
+
+ {this.props.canSave ? : } + + +
this.contentNode = node} className={styles.host} singleToken={true} contentProps={editorData} contentSrc="mosaico/editor" tokenMethod="mosaico" tokenParams={tokenData}/>
diff --git a/client/src/lib/styles.scss b/client/src/lib/styles.scss index 155bb70e..47eb7f76 100644 --- a/client/src/lib/styles.scss +++ b/client/src/lib/styles.scss @@ -123,6 +123,10 @@ text-align: center; font-size: 20px; color: #808080; + + p:last-child { + margin-bottom: 0px; + } } .dropZoneActive{ diff --git a/client/src/lists/fields/List.js b/client/src/lists/fields/List.js index a7901077..d94a1045 100644 --- a/client/src/lists/fields/List.js +++ b/client/src/lists/fields/List.js @@ -51,7 +51,7 @@ export default class List extends Component { const columns = [ { data: 4, title: "#" }, { data: 1, title: t('name'), - render: (data, cmd, rowData) => rowData[2] === 'option' ? {data} : data + render: (data, cmd, rowData) => rowData[2] === 'option' ? {data} : data }, { data: 2, title: t('type'), render: data => this.fieldTypes[data].label, sortable: false, searchable: false }, { data: 3, title: t('mergeTag') }, diff --git a/server/models/fields.js b/server/models/fields.js index 20f9adef..4551a248 100644 --- a/server/models/fields.js +++ b/server/models/fields.js @@ -88,7 +88,7 @@ fieldTypes.gpg = { fieldTypes.json = { validate: field => {}, - addColumn: (table, name) => table.json(name), + addColumn: (table, name) => table.text(name), indexed: false, grouped: false, enumerated: false,