Administering

Elephant Web Admin API is a new set of tools for creating pages and editing contents in a single place.

The main goal of the API is simplifying tasks and providing web pages with the same features other modules already have. For one, the EWiki.

New features

Context admin

Content admin


Configuration files

Elephant Configuration Files contain information about what's internally happening when delivering content, reading databases or sending emails.

Configuration files are classified into different roots, and developed into specific branches, with meaningful names. This table explains the roots.

Root Content
Configuration Generic site configuration, search forms, DB connections, mail providers, OAuth providers, ...
Support Internal support data.
Cascade Stylesheets Overridable cascade stylesheets.
Mail templates Format templates for emails.
Semantic templates Semantic/Fomantic templates.
Reports Book-keeping reports. Requires Financials installed.
Terms of Use Terms of Use to be accepted, before a user can register.
Welcome Extra text added to the Welcome email.
Wiki Wiki templates and snippets.
Permissions and scope
It isn't a common task to configure these files, and the access is only granted to superusers. An exception could be the Terms of Use and Welcome content.

Terms of Use

Files in this folder, can be .txt, .html and .wiki. Each type will be interpreted as expected by the file's extension. The result will be a dialog with as many tabs as files encountered, being the name in the tab, the file's name.

Welcome

Files in this folder, can be extra.txt or extra.wiki. Each type will be interpreted as expected by the file's extension. The result will be added to the welcome email.

The text file will integrate into the email with default size and font. The wiki file is expected to include wiki with email compatible syntax.

Configurator

Elephant Configurator is a file based configuration tool. The main intention is to encapsulate Elephant site properties. The tool uses a map of keys, values, contextual help and triggers. This is a list of keys, and their use within Elephant based modules, including the BrightSide libraries. This feature is only available to superuser.

Beta feature
Since this feature is still in beta stage, some keys may not be implemented. Use with care.
Key Description Default
Alliance.Client.Grants.ReadServers Disables server-reading Project Grants when false true
Appearance.Color.Primary Primary color, should be set to stylesheet primary color, can be used in Wmacros with color, as primary
Appearance.Color.Secondary Secondary color, should be set to stylesheet secondary color, can be used in Wmacros with color, as secondary
Appearance.Color.C1 Free definition, can be used in Wmacros with color, as c1
Appearance.Color.C2 Free definition, can be used in Wmacros with color, as c2
Appearance.Color.C3 Free definition, can be used in Wmacros with color, as c3
Authentication.AllowCenters Disables centers from authenticate when false false
Authentication.AllowCompanies Disables companies from authenticate when false false
Authentication.AllowLiveLinks Disables LiveLinks when false true
Contact.Relation.Professional.Autovalidate Professional relations will auto-validate when true false
Contact.Relation.Student.Autovalidate Student relations will auto-validate when true false
Context.Mobile.Path When defined, enables a different landing for mobile devices
Directory.Networking.Access.BasicRoles Basic roles for accessing directories @admin:is|@patron:on|@partner:on
Directory.Networking.Access.PremiumRoles Premium roles for accessing premium features @admin:is|@patron:on|@partner:on
Directory.Networking.Centers.ListedRoles Center's roles in order to be listed @center:is
Directory.Networking.Companies.ListedRoles Company's roles in order to be listed @company:is
Directory.Networking.Entities.ListedRoles Company or Center roles in order to be listed @company:is|@center:is
Directory.Networking.ListedRoles Contact's roles in order to be listed @natural:is|@responsible:is
Directory.Networking.Professionals.ListedRoles Contact's roles in order to be listed @worker:is|@responsible:is
Dossier.View.DaysToBeNew Maximum days passed since created or changed phase, to be considered new 30
Profile.Documents.Maximum Defines the maximum public documents per profile 3
Profile.Suggest.Company Suggests improving company or center description false
Profile.Suggest.Image Suggests users to add the avatar to the profile false
Profile.Suggest.Professional.Documents Suggests adding public documents to professional's profile false
Profile.Suggest.Relation Strongly suggests users to add a relation false
Profile.Suggest.Skills Suggests users to add skills false
Profile.Suggest.Student.Documents Suggests adding public documents to student's profile true
Service.New.AllowRoles Contact's roles to be able to publish @partner:on
Service.New.AllowSingle Allows unrelated contacts to publish false
Service.Question.AllowRoles Contact's roles to be able send questions @partner:on|@patron:on
Service.Recipients.Roles Contact's roles that will receive notifications @admin:is|@partner:on|@patron:on|@guest:on
SignUp.Allow Disables creating new accounts when false true
SignUp.AllowRelations Enables creating a relation for new accounts when true false
SignUp.Default.SocialGroup Sets de default social group for new accounts guest
SignUp.TellSomeone.Allow Disables the 'Tell someone' feature when false true
Site.Name Sets de site name
Site.Domain Forces the site to work with this domain. Important when using SSL.
Site.Description Sets site description.
Site.Keywords Sets site keywords.
Site.Fonts Loads fonts from G-Fonts. Lato
Site.Icon Icon absolute URL.
Site.Locales Sets site locales, usually the same as in ROOT context.
Site.Files Site internal files.
Site.Encoding Site encoding. ISO-8859-1
Site.TemplatesRoot Templates root. templates-semantic
Site.UseSSL Use SSL (requires certificate) false
Responsiveness

Elephant Templates are fully responsive by default, using the CSS/JavaScript framework Fomantic-UI.

Since version 3, Elephant introduces two different types of responsiveness, browser-based as server-based.

Browser-based

Browser-based responsiveness is mainly provided by the standard templates + Fomantic-UI. The templates provide the necessary information to the browser, to adjust components for different screen sizes. The browser is then capable of restructure the content dinamically, without reloading the page.

To try the browser-based responsiveness, resize the browser window. You will see how components change, stacking columns, or changing the main menu type when the size resembles a cellphone device.

Server-based

Server-based responsiveness is controlled by the server side. Allows to provide different content depending on user roles, dao-iterators or dynamic macros.

Server-based responsiveness ensures that site visitors only receive the content addressed to their role or current device. The main difference with browser-based responsiveness is that the browser only receives the appropiate source-content.

Page reloading
Since server-based content isn't loaded by browsers, in order to see changes is necessary to reload the page. This only applies if you are making changes to content.

Server-driven context

A server-driven context is an extension of the server-based responsiveness. Context server-driven property must be set by the Superuser.

Beta feature
Since this feature is still in beta stage, some unexpected results may happen. At this moment, server-driven contexts do not allow dynamic macros. Use with care and check with different profiles.

Contexts with this property set to true, can use conditionals inside the EWiki content. Examples would be:

@s{if mobile}
  ... /* this content will be sent only to mobile devices */
@s{/if}
@s{if rolemap['@partner:on']}
  ... /* this content will be sent only to partners */
@s{/if}
Security Locks

Elephant Security Locks were introduced in 2020, to mitigate malicious attempts to access the website. Currently, the API uses different layers to protect the resources, the Security Locks themselves, and the Take a Nap system.

Security Locks

The Security Locks, block IPs permanently for specific reasons. The system activate the Security Locks by default.

Security Locks message

Not access allowed from your IP

Further attempts without permission will block you permanently and the IP will be published into blacklists.

If you want to be removed from this blacklist, contact the web administrators.

Take a Nap

Take a Nap is a more flexible system, with a bigger scope. Recognizes two status, at peace and not at peace. When not at peace, the system forces Elephant is taking a nap status. The status is not absolute, not wide range, and won't be detailed here for obvious reasons.

Take a Nap message

Elephant is taking a nap!

And you may wonder, why?

There are several reasons that trigger the nap state for you, but usually is because some malicious software is sending attacks to the website.

Do not worry, Elephant is up and running, while waiting for these attacks to stop.