Supported Options

App instance options

Option name

Value

Description

GISCLOUD_CONFIG

String - e.g. portal.json

Path to the custom app json file in the user folder

DEFAULT_LANGUAGE

String - en, nl, de, sw etc.

Setting default language

LOGIN_PAGE_ONLY

0 or 1

Show only login page if user is not logged in

LAYER_MODULE_BUTTONS_HIDE

0 or 1

Hide toolbar buttons in the layer list

DEFAULT_MAP_ID

Number - <map id>

Setting the default map to load on the beginning

TOOLBAR_ELEMENTS

String - e.g. search,measure, areameasure, distancemeasure,info,zoom, zoomin, zoomout, viewall,print,scale,select, selectarea, layerlist, azimuth, togglemenu, currentlocation, coordinates

List of buttons separated with a “,”

UNIT_SRID

E.g. 3765

Set local SRID to have more precise area measuring

MEASURE_UNIT_DISTANCE

e.g.  ft,m,yard,mile

unit for distance measurement on measure tools

MEASURE_UNIT_AREA

e.g.  ft,m,acre,ha

unit for area measurement on measure tools

MEASURE_UNIT_PROJECTION

e.g. 3765

EPSG projection code for initial value on measure tools

LOGIN_PAGE_LOGO_URL

String - URL

URL to a custom logo on the login page

LOGIN_PAGE_LOGO_LINK

String - URL

Setting a custom logo link (on the login page) e.g. http://www.google.com

LOGO_LINK

String - URL

Setting a custom logo link (inside the app) e.g. http://www.giscloud.com

LOGIN_PAGE_HIDE_APP_TITLE

0 or 1

FORCE_INFO_WINDOW

0 or 1

Force to always use info window popup

SHOW_MAPS_FROM_OTHER_APPS

0 or 1

DISABLE_MY_ACCOUNT

0 or 1

Remove “My Account” link from the user menu. Used when you want to prevent your users from changing user credentials.

MODULE_HOMEPAGE

0 (default) or 1

MODULE_DATAGRID

0 or 1

MODULE_SEARCH

0 or 1

MODULE_GOOGLE_SEARCH

0 or 1

Google map search control

MODULE_GISCLOUD_SEARCH

giscloud,google

Display GIS Cloud search, Google maps search or both

MODULE_LOGIN_BOX

0 or 1

MODULE_SSO

0 or 1

Enable or disable social sso on the login box like google, facebook, linkedin and twitter.

GRAPHIC_SCALE

0 or 1

Show graphic scale inside the map viewer

ALLOW_USERS_REGISTRATION

0 or 1

Allow public registration

MAP_AUTO_REFRESH_INTERVAL

Integer >1

Frequency of auto map refresh, in seconds

MAP_NO_AUTO_REFRESH

0 or 1

Prevent periodically refreshing map

SIGN_UP_LINK

0 or 1

Setting a custom link which lead visitor to a signup page

REGISTRATION_SET_USER_OWNER

Number - <user id>

Setting parent user for all new registered users on the current app instance

REGISTRATION_REQUIRED_FIELDS

email,password,password2

REGISTRATION_NO_EMAILS

0 or 1

REGISTRATION_DEFAULT_USER_SUBSCRIPTION

Number - possible values are 10, 20, 25

Setting a default user subscription for new user

10 - Non commercial

20 - Commercial trial (30 days)

25 - Full commercial

REGISTRATION_SKIP_WELCOME_SCREEN

0(default) or 1

Skip welcome form on the first user login

OLARK

0 or 1

Hides Olark support chatbox

SEARCH_RESULTS_CLOSE_ON_CLICK

0 or 1

Leave search results visible after click on the result

THEME_COLOR

Hex

CSS color definition for the main app theme, e.g. 0x20101

TEXT_EDITOR_THEME

String

List of all themes can be found here http://ace.c9.io/build/kitchen-sink.html 

COLUMN_RENDER

0 or 1

Experimental! Gives a way to define custom rendering method for each column in the layer form, attributes tab

LAYER_LIST_EXPAND_ALL

0 or 1

Expand all folders in the layer list by default

LAYER_LIST_OPEN

0 or 1

Show layer list by default

LAYER_LIST_WIDTH

Number (in piixels)

Sets minimum layer list width

BLOG_HIDE

0 or 1

Hide blog&video sections on the homepage

HOMEPAGE_MAPS

all,my,shared,public

Array string

HOMEPAGE_MAPS_ACTIVE

all|my|shared|public

String

RESOURCE_LINKING

0 or 1

EXPORT_MAP_SCALE

x1, x2, x3, 1000, 5000, 10000, ...

Predefined map scale on the map export

OPEN_LINKS_IN_NEW_WINDOW

0 or 1

Force to open all the attachments in the new window/tab.

DATAGRID_FILTER_BY_EXPRESSIONS

0 or 1

Show in the datagrid panel only values that match layer expressions (if defined).

SHOW_MAPS_FROM_OTHER_APPS

0 or 1

Enables use of available maps from other GC apps

CUSTOM_OIDC

{

  "provider": "<provider oidc url>",

  "flow": "authorization code|implicit",

  "client_id": "<client id registered with the provider>",

  "client_secret": "<optional client secret registered with the provider>"

}

Enables authentication with a custom OpenID Connect provider

User options

Same like app instance options list but user option have higher priority and allow you to override them.


Layer options

Option name

Value

Description

GEOMETRY_TYPE

String

Override geometry layer type, e.g. for WFS layers

Map options

Option name

Value

Description

DEFAULT_SELECTED_LAYER_ID

Number - <layer id>

Setting the default selected layer in the layer list

MAP_ENGINE_MODE

2

Experimental! Turn on optimized map rendering

SEARCH_FIELDS

JSON

ONLY WORKS FOR DB LAYERS!

Instruct the search engine to search inside specified layers and attributes

{"<layer_id>": ["<layer attribute>"], ...}

If attribute name is prefixed by @@, full text search will be performed instead of a normal (“LIKE”) matching

E.g.  {"448572": ["owner","tin","tinnospace","temp1"],"473741":["fullstreet"]}

LAYER_LIST_EXPAND_ALL

Expand all folders in the layer list by default

RESULT_FIELDS

JSON

What attributes will be shown inside a search results

{"<layer_id>": ["<layer attribute>"], ...}

E.g.  {"448572": ["owner","tin","tinnospace","temp1"],"473741":["fullstreet"]}

MEASURE_UNIT_PROJECTION

E.g. 3765

Defines default projection for Measurement tool

HIGHLIGHT_COLOR

E.g. 0xff0000

Defines color of selected features

DUPLICATE_LAYER_CHANGE_STYLE

0 or 1 (default value)

Preserve a layer style on duplicate or new layer from selection.

STREETVIEW

0 or 1 (Default)

Enable Google Street View service in the map toolbar

NEWSLETTER

skip

If ‘skip’ value is set user will receive any GIS Cloud newsletter

LABEL_ENGINE_MODE

2

Experimental! Render labels in an optimized way

Map Portal Setup

In order to setup map portal following steps need to be taken.

  1. Install new map portal app instance in the Manager, Apps tab
  2. Go to the app instance form of the newly created app, Edit button
  3. Under Advanced tab set option DEFAULT_MAP_ID - <any public map id>
  4. Another option to consider for tweaking look and feel

Custom menu on the map portal layout


App JSON

Example 1 - Including custom javascript scripts and CSS styling, templating

{

    "scripts": {

        "namespace": "gc",

        "init": [

            "assets/js/init.js"

        ],

        "app": [

            "assets/js/app.js"

        ],

        "setup": []

    },

    "styles": [

        "assets/css/style.css"

    ],

    "images": [],

    "html_tag_attributes": "xml:lang='en' lang='en'",

    "template_logout": "assets/html/landing.html",

    "template_login": "assets/html/body.html"

}

       

Example 2 - Custom menu

{

    "responsive": true,

    "sections": {

        "top": {

            "logo": {},

            "menu": {

                "items": [

                    {

                        "label_i18n": "Switch Map",

                        "href": "javascript:;",

                        "items": [

                            {

                                "label_i18n": "Find Your Space",

                                "onclick": "gcproject.mapChange(199540);"

                            },

                            {

                                "label_i18n": "Road Closure Application",

                                "onclick": "gcproject.mapChange(166950);"

                            },

                            {

                                "label_i18n": "City of Canton",

                                "onclick": "gcproject.mapChange(150872);"

                            }

                        ]

                    },

                    {

                        "label_i18n": "Export Map",

                        "onclick": "gcproject.exportMap();"

                    },

                    {

                        "label_i18n": "Export Layer",

                        "onclick": "gcapp.gclayer.exportLayer(); return false;"

                    }

                ]

            }

        }

    }

}

Example 3: Custom login page

{

    "scripts": {

        "namespace": "konzum",

        "init": ["assets/js/init.js"],

        "app": [

        ],

        "setup": []

    },

    "template_logout": "assets/html/landing.html",

    "styles": ["assets/css/style.css"],

    "images": ["assets/images/konzum_logo.png"],

    "responsive": true,

        "panels": [

        {

            "id": "panel1",

            "logged_in": true,

            "title": "Store filter",

            "position": "floating",

            "css": {"top": "100px"},

            "width": 250,

            "height": 340,

            "open": false,

            "draggable": true,

            "closeButton": true,

            "filters": {

                "240541": {

                    "layer_id": 676850,

                    "applyButton": true,

                    "items": [

                        {

                            "type": "DATA_FILTER_DROPDOWN",

                            "label": "Group",

                            "items": [

                                {"label": "No filter", "no_filter": true},

                                {"label": "Billa", "value": "BILLA"},

                                {"label": "Lidl", "value": "LIDL"},

                                {"label": "Kaufland", "value": "KAUFLAND"},

                                {"label": "Diona", "value": "DINOVA DIONA"},

                                {"label": "Mlinar", "value": "MLINAR"},

                                {"label": "Plodine", "value": "PLODINE"},

                                {"label": "Interspar", "value": "INTERSPAR"},

                                {"label": "Mercator", "value": "MERCATOR"},

                                {"label": "Tommy", "value": "tommy"}

                            ],

                            "column": "grupa"

                        },

                        {

                            "type": "DATA_FILTER_RANGE",

                            "null_value": -1,

                            "label": "Size",

                            "column": "m2",

                            "min": 0,

                            "max": 1000,

                            "style": ""

                        },

                        {

                            "type": "DATA_FILTER_FEATURES_NUMBER"

                        }

                    ]

                }

            }

        }

        ],

    "sections": {

        "top": {

            "logo": {},

            "menu": {

                "items" : [

                    {

                        "label_i18n": "Store filter",

                        "href": "javascript:;",

                        "onclick": "giscloud.app.panels[0].toggle();"

                    },

                   {

                        "label_i18n": "Spatial filter",

                        "href": "javascript:;",

                        "onclick": "gcanalysis.open(gcAnalysisType.SPATIAL_FILTER);"

                    },

                   {

                        "label_i18n": "Buffer",

                        "href": "javascript:;",

                        "onclick": "gcanalysis.open(gcAnalysisType.BUFFER);"

                    },

                       {

                        "label_i18n": "Share",

                        "href": "javascript:;",

                        "onclick": "gcproject.sharingAndPublishMap(true);"

                    },

                      {

                        "label_i18n": "Export map",

                        "href": "javascript:;",

                        "onclick": "gcproject.exportMap();"

                    }

                ]

            }

        }

    }

}

Example 4: Custom template

{

    "scripts": {

        "init": [],

        "app": ["assets/js/app.js"]

    },

    "template_login": "assets/html/body.html",

    "template_logout": "assets/html/landing.html",

    "styles": ["assets/css/style.css"],

    "images": [],

    "sections": {

        "top": {

            "logo": {},

            "menu": {

                "items" : [

                    {

                        "label_i18n": "Import",

                        "href": "javascript:;",

                        "onclick": "if (gcapp.checkAndWarnForLogin()) gcimport.importData(); return false;"

                    }

                ]

            }

        }

    }

}