first commit

This commit is contained in:
Massimiliano Assante 2020-03-17 14:50:36 +01:00
commit c695aacedb
34 changed files with 2674 additions and 0 deletions

115
pom.xml Normal file
View File

@ -0,0 +1,115 @@
<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.gcube.tools</groupId>
<artifactId>maven-parent</artifactId>
<version>1.0.0</version>
</parent>
<groupId>org.gcube.portal.plugins</groupId>
<artifactId>territori-aperti-theme</artifactId>
<packaging>war</packaging>
<version>6.5.0-SNAPSHOT</version>
<name>territori-aperti-theme Theme</name>
<description>
D4Science territori-aperti Liferay Theme
</description>
<scm>
<connection>scm:git:https://code-repo.d4science.org/gCubeSystem/territori-aperti-theme.git</connection>
<developerConnection>scm:git:https://code-repo.d4science.org/gCubeSystem/territori-aperti-theme.git</developerConnection>
<url>https://code-repo.d4science.org/gCubeSystem/territori-aperti-theme</url>
</scm>
<properties>
<liferay.version>6.2.5</liferay.version>
<liferay.maven.plugin.version>6.2.10.12</liferay.maven.plugin.version>
<liferay.theme.parent>classic</liferay.theme.parent>
<liferay.theme.type>vm</liferay.theme.type>
<liferay.auto.deploy.dir>/Users/massi/portal/liferay-portal-6.2-ce-ga6/deploy</liferay.auto.deploy.dir>
<liferay.app.server.deploy.dir>/Users/massi/portal/liferay-portal-6.2-ce-ga6/tomcat-7.0.62/webapps</liferay.app.server.deploy.dir>
<liferay.app.server.lib.global.dir>/Users/massi/portal/liferay-portal-6.2-ce-ga6/tomcat-7.0.62/lib/ext</liferay.app.server.lib.global.dir>
<liferay.app.server.portal.dir>/Users/massi/portal/liferay-portal-6.2-ce-ga6/tomcat-7.0.62/webapps/ROOT</liferay.app.server.portal.dir>
</properties>
<build>
<plugins>
<plugin>
<groupId>com.liferay.maven.plugins</groupId>
<artifactId>liferay-maven-plugin</artifactId>
<version>${liferay.maven.plugin.version}</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>theme-merge</goal>
<goal>build-css</goal>
<goal>build-thumbnail</goal>
</goals>
</execution>
</executions>
<configuration>
<autoDeployDir>${liferay.auto.deploy.dir}</autoDeployDir>
<appServerDeployDir>${liferay.app.server.deploy.dir}</appServerDeployDir>
<appServerLibGlobalDir>${liferay.app.server.lib.global.dir}</appServerLibGlobalDir>
<appServerPortalDir>${liferay.app.server.portal.dir}</appServerPortalDir>
<liferayVersion>${liferay.version}</liferayVersion>
<parentTheme>${liferay.theme.parent}</parentTheme>
<pluginType>theme</pluginType>
<themeType>${liferay.theme.type}</themeType>
</configuration>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.liferay.portal</groupId>
<artifactId>portal-service</artifactId>
<version>${liferay.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.liferay.portal</groupId>
<artifactId>util-bridges</artifactId>
<version>${liferay.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.liferay.portal</groupId>
<artifactId>util-taglib</artifactId>
<version>${liferay.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.liferay.portal</groupId>
<artifactId>util-java</artifactId>
<version>${liferay.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.portlet</groupId>
<artifactId>portlet-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>

BIN
src/.DS_Store vendored Normal file

Binary file not shown.

BIN
src/main/.DS_Store vendored Normal file

Binary file not shown.

View File

@ -0,0 +1,2 @@
See http://www.liferay.com/community/wiki/-/wiki/Main/Resources+Importer+Web
for more information about the Resources Importer.

View File

@ -0,0 +1,22 @@
{
"layouts": [
{
"columns": [
[
{
"portletId": "58"
}
],
[
{
"portletId": "47"
}
]
],
"friendlyURL": "/home",
"name": "Welcome",
"title": "Welcome"
}
],
"layoutTemplateId": "2_columns_ii"
}

BIN
src/main/webapp/.DS_Store vendored Normal file

Binary file not shown.

View File

@ -0,0 +1,217 @@
<?xml version="1.0"?>
<!DOCTYPE look-and-feel PUBLIC "-//Liferay//DTD Look and Feel 6.2.0//EN" "http://www.liferay.com/dtd/liferay-look-and-feel_6_2_0.dtd">
<look-and-feel>
<compatibility>
<version>6.2.5+</version>
</compatibility>
<theme id="territori-aperti" name="territori-aperti-theme">
<settings>
<setting configurable="true" key="show-powered-d4science" type="checkbox" value="false" />
<setting configurable="true" key="show-eu-flag" type="checkbox" value="true" />
<setting configurable="true" key="header-background-css-attributes" type="textarea" />
<setting configurable="true" key="div-wrapper-css-attributes" type="textarea" />
<setting configurable="true" key="div-wrapper-image-name" type="text" />
<setting configurable="true" key="portlet-topper-css-attributes" type="textarea" />
<setting configurable="true" key="footer-website-name" type="text" />
<setting configurable="true" key="footer-website-url" type="text" />
<setting configurable="true" key="footer-website-name" type="text" />
<setting configurable="true" key="footer-text-about" type="text" />
<setting configurable="true" key="body-background-color">
<![CDATA[
AUI().ready(
'aui-color-picker-popover',
function(A) {
var AllControls = A.all("#regularlayoutsAdminLookAndFeelSettingsPanelContent .control-group");
AllControls.setStyle('marginBottom', '5px');
var nodePicker = A.one("#[@NAMESPACE@]body-background-color");
nodePicker.ancestor().setStyle('float', 'left');
nodePicker.ancestor().setStyle('marginRight', '10px');
nodePicker.setStyle('width', '74px');
nodePicker.setStyle('borderLeftWidth', '30px');
nodePicker.setStyle('borderLeftColor', nodePicker.get('value'));
var colorPicker = new A.ColorPickerPopover({
trigger: nodePicker,
zIndex: 99
}).render();
colorPicker.on('select', function(event) {
var color = event.color;
event.trigger.set('value', color);
nodePicker.setStyle('borderLeftColor', color);
});
}
);
]]>
</setting>
<setting configurable="true" key="navbar-background-color"
type="text">
<![CDATA[
AUI().ready(
'aui-color-picker-popover',
function(A) {
var AllControls = A.all("#regularlayoutsAdminLookAndFeelSettingsPanelContent .control-group");
AllControls.setStyle('marginBottom', '5px');
var nodePicker = A.one("#[@NAMESPACE@]navbar-background-color");
nodePicker.ancestor().setStyle('float', 'left');
nodePicker.ancestor().setStyle('marginRight', '10px');
nodePicker.setStyle('width', '74px');
nodePicker.setStyle('borderLeftWidth', '30px');
nodePicker.setStyle('borderLeftColor', nodePicker.get('value'));
var colorPicker = new A.ColorPickerPopover({
trigger: nodePicker,
zIndex: 99
}).render();
colorPicker.on('select', function(event) {
var color = event.color;
event.trigger.set('value', color);
nodePicker.setStyle('borderLeftColor', color);
});
}
);
]]>
</setting>
<setting configurable="true" key="navbar-tabselected-color"
type="text">
<![CDATA[
AUI().ready(
'aui-color-picker-popover',
function(A) {
var AllControls = A.all("#regularlayoutsAdminLookAndFeelSettingsPanelContent .control-group");
AllControls.setStyle('marginBottom', '5px');
var nodePicker = A.one("#[@NAMESPACE@]navbar-tabselected-color");
nodePicker.ancestor().setStyle('float', 'left');
nodePicker.ancestor().setStyle('marginRight', '10px');
nodePicker.setStyle('width', '74px');
nodePicker.setStyle('borderLeftWidth', '30px');
nodePicker.setStyle('borderLeftColor', nodePicker.get('value'));
var colorPicker = new A.ColorPickerPopover({
trigger: nodePicker,
zIndex: 99
}).render();
colorPicker.on('select', function(event) {
var color = event.color;
event.trigger.set('value', color);
nodePicker.setStyle('borderLeftColor', color);
});
}
);
]]>
</setting>
<setting configurable="true" key="navbar-tabhover-color"
type="text">
<![CDATA[
AUI().ready(
'aui-color-picker-popover',
function(A) {
var AllControls = A.all("#regularlayoutsAdminLookAndFeelSettingsPanelContent .control-group");
AllControls.setStyle('marginBottom', '5px');
var nodePicker = A.one("#[@NAMESPACE@]navbar-tabhover-color");
nodePicker.ancestor().setStyle('float', 'left');
nodePicker.ancestor().setStyle('marginRight', '10px');
nodePicker.setStyle('width', '74px');
nodePicker.setStyle('borderLeftWidth', '30px');
nodePicker.setStyle('borderLeftColor', nodePicker.get('value'));
var colorPicker = new A.ColorPickerPopover({
trigger: nodePicker,
zIndex: 99
}).render();
colorPicker.on('select', function(event) {
var color = event.color;
event.trigger.set('value', color);
nodePicker.setStyle('borderLeftColor', color);
});
}
);
]]>
</setting>
<setting configurable="true" key="login-button-color" type="text">
<![CDATA[
AUI().ready(
'aui-color-picker-popover',
function(A) {
var AllControls = A.all("#regularlayoutsAdminLookAndFeelSettingsPanelContent .control-group");
AllControls.setStyle('marginBottom', '5px');
var nodePicker = A.one("#[@NAMESPACE@]login-button-color");
nodePicker.ancestor().setStyle('float', 'left');
nodePicker.ancestor().setStyle('marginRight', '10px');
nodePicker.setStyle('width', '74px');
nodePicker.setStyle('borderLeftWidth', '30px');
nodePicker.setStyle('borderLeftColor', nodePicker.get('value'));
var colorPicker = new A.ColorPickerPopover({
trigger: nodePicker,
zIndex: 99
}).render();
colorPicker.on('select', function(event) {
var color = event.color;
event.trigger.set('value', color);
nodePicker.setStyle('borderLeftColor', color);
});
}
);
]]>
</setting>
<setting configurable="true" key="footer-background-color" type="text" value="#555">
<![CDATA[
AUI().ready(
'aui-color-picker-popover',
function(A) {
var AllControls = A.all("#regularlayoutsAdminLookAndFeelSettingsPanelContent .control-group");
AllControls.setStyle('marginBottom', '5px');
var nodePicker = A.one("#[@NAMESPACE@]footer-background-color");
nodePicker.ancestor().setStyle('float', 'left');
nodePicker.ancestor().setStyle('marginRight', '10px');
nodePicker.setStyle('width', '74px');
nodePicker.setStyle('borderLeftWidth', '30px');
nodePicker.setStyle('borderLeftColor', nodePicker.get('value'));
var colorPicker = new A.ColorPickerPopover({
trigger: nodePicker,
zIndex: 99
}).render();
colorPicker.on('select', function(event) {
var color = event.color;
event.trigger.set('value', color);
nodePicker.setStyle('borderLeftColor', color);
});
}
);
]]>
</setting>
</settings>
</theme>
</look-and-feel>

View File

@ -0,0 +1,9 @@
name=territori-aperti-theme
module-group-id=liferay
module-incremental-version=8
tags=
short-description=
change-log=
page-url=http://www.gcube-system.org
author=M. Assante CNR-ISTI
licenses=EUPL

View File

@ -0,0 +1,4 @@
<?xml version="1.0"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
</web-app>

View File

@ -0,0 +1,48 @@
$gray: #555;
$white: #FFF;
$linkColor: #0AF;
$linkColorHover: darken($linkColor, 15%);
$baseBorderRadius: 2px;
$borderRadiusLarge: 3px;
$borderRadiusSmall: 2px;
$btnBackground: #F6F6F6;
$btnBackgroundHighlight: #EAEAEA;
$btnBorder: #CFCFCF;
$btnDangerBackground: #F53924;
$btnDangerBackgroundHighlight: #ED2C17;
$btnInfoBackground: #00CFFF;
$btnInfoBackgroundHighlight: darken($btnInfoBackground, 4%);
$btnPrimaryBackground: #54AAFF;
$btnPrimaryBackgroundHighlight: #4A96E8;
$btnSuccessBackground: #0ECD27;
$btnSuccessBackgroundHighlight: #0ABA1D;
$btnWarningBackground: #FFA658;
$btnWarningBackgroundHighlight: #F49645;
$dropdownLinkBackgroundActive: lighten($linkColor, 5%);
$dropdownLinkBackgroundHover: darken(#3ECAF4, 10%);
$dropdownLinkColorActive: $white;
$navbarBackground: #F3F3F3;
$navbarBackgroundHighlight: #F9F9F9;
$navbarBorder: #DDDDDD;
$navbarLinkBackgroundActive: lighten($navbarBackground, 25%);
$navbarLinkColor: $gray;
$navbarLinkColorHover: $linkColorHover;
$navbarText: $navbarLinkColor;
$errorBackground: #FEE5E2;
$errorBorder: #FCACA5;
$errorText: #B50303;
$infoBackground: #CEF1FC;
$infoBorder: darken($infoBackground, 10%);
$infoText: #12718F;
$successBackground: #F1FBD1;
$successBorder: #BCE830;
$successText: #488F06;
$warningBackground: #FFFBDC;
$warningBorder: #F1D875;
$warningText: #BF7900;

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,967 @@
@import "aui/alloy-font-awesome/scss/mixins-alloy";
@import "aui/alloy-font-awesome/scss/variables";
@import "compass";
@import "compass/css3/user-interface";
@import "mixins";
@import url(custom_responsive.css);
.aui {
body {
color: #000;
font-weight: 200;
}
a {
color: #3B5998;
font-weight: 200;
&:hover {
color: #3B5998;
}
[class^="icon-"], [class*=" icon-"] {
display: inline-block;
}
}
.alert, .portlet-msg-alert, .portlet-msg-error, .portlet-msg-help, .portlet-msg-info, .portlet-msg-progress, .portlet-msg-success {
word-wrap: break-word;
}
.table {
font-size: 15px;
overflow: hidden;
td {
background-color: #F9F9F9;
}
thead th {
background-color: #F0EFEF;
font-size: 15px;
font-weight: normal;
}
.table-sort-liner a {
color: #555;
font-weight: normal;
text-decoration: underline;
}
}
.table-striped tbody > tr:nth-child(odd) {
> td, > th {
background-color: #FFF;
}
}
.table-hover tbody tr:hover {
> td, > th {
background-color: #EDF8FD;
}
}
input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"], select, textarea, .uneditable-input {
border: 1px solid #DDD;
color: #333;
font-weight: 200;
margin-bottom: 7px;
}
input[type="submit"] {
margin-bottom: 11px;
margin-top: 6px;
}
input[type="text"].search-query {
margin-top: 0;
}
label {
color: #555;
font-size: 15px;
font-weight: 200;
}
li {
line-height: 27px;
}
select:focus {
border: 1px solid rgba(0, 172, 255, 0.8);
outline: 5px auto rgba(82, 168, 236, 0.6);
outline-offset: -2px;
}
.form-search, .lfr-translation-manager-selector {
.control-group-inline {
margin: 0;
}
}
.field-wrapper .btn {
margin-top: 0;
}
.btn.disabled, .btn[disabled] {
@include opacity(0.4);
}
.btn-link {
color: #0078b2;
text-decoration: none;
&:focus, &:hover {
color: #009AE5;
text-decoration: none;
}
> i {
height: auto;
margin: 0;
padding: 0;
width: auto;
}
}
.control-group {
margin-bottom: 30px;
.input-resource-wrapper {
margin-bottom: 0;
}
}
.lfr-ddm-container, .portlet-staging-bar {
.control-group {
margin-bottom: 15px;
}
}
@include respond-to(phone) {
.form-search .input-append {
.btn {
font-size: 0;
padding: 4px 19px 0;
&:after {
content: $search;
font-size: 18px;
@include icon-FontAwesome();
}
}
}
}
.navbar .nav > li > a {
&:focus, &:hover {
color: #009AE5;
}
}
.lfr-tree .tree-node .tree-node-selected .tree-label {
background: #E4F5FC;
}
/* ---------- Main ---------- */
.previous-level {
&:focus {
color: #0A68CD;
}
&:hover {
color: #8CD3FC;
}
}
.logo, .logo:hover {
color: #333;
line-height: 20px;
}
.portlet, .portlet-borderless-container {
background: #FFF;
margin-bottom: 10px;
padding: 0;
}
.portlet-title {
padding: 0 10px;
}
.portlet-nested-portlets .portlet-body .portlet {
border: 1px solid #E5E5E5;
}
.portlet-borderless-container {
margin-bottom: -7px;
}
.portlet-options {
.dropdown-toggle .caret {
display: none;
}
}
/* ---------- Help icon ---------- */
.taglib-icon-help {
img {
@include opacity(0.5);
vertical-align: top;
&:hover {
@include opacity(1);
}
}
}
/* ---------- Dockbar ---------- */
.dockbar-split {
.dockbar {
.nav {
li.dropdown {
> .dropdown-toggle {
@extend %dockbar-caret;
}
&.open, &.active, &.open.active {
> .dropdown-toggle {
background-color: transparent;
color: #FFF;
@extend %dockbar-caret;
}
}
}
}
.navbar-inner {
background: none;
visibility: hidden;
}
}
&.dockbar-ready .dockbar .navbar-inner {
visibility: visible;
}
}
.dockbar {
&.navbar .navbar-inner {
min-height: 40px;
}
.navbar-inner {
background: #333;
.container .btn-navbar {
color: #FFF;
.user-avatar-image {
position: relative;
top: 2px;
width: 28px;
}
}
}
.nav {
> li {
> a {
color: #FFF;
line-height: 31px;
&:focus, &:hover {
color: #FFF;
}
[class^="icon-"], [class*=" icon-"] {
margin-top: 3px;
}
}
&.active > a {
color: #FFF;
&, &:hover, &:focus {
background: #0066B3;
}
}
}
%dockbar-caret {
&, &:hover {
.caret {
border-bottom-color: #FFF;
border-top-color: #FFF;
}
}
}
li.dropdown {
> .dropdown-toggle {
@extend %dockbar-caret;
}
&.open, &.active, &.open.active {
> .dropdown-toggle {
background-color: #3EA9DB;
color: #FFF;
@extend %dockbar-caret;
}
}
.dropdown-menu, .site-administration-menu {
background: #009AE5;
border-width: 0;
left: 0;
margin: 0;
right: auto;
> li > a {
color: #FFF;
font-size: 0.9em;
font-weight: 300;
&:focus, &:hover {
background: #2FA4F5;
@include filter-gradient(#2FA4F5, #2FA4F5, vertical);
}
[class^="icon-"], [class*=" icon-"] {
margin-right: 3px;
}
.icon-spacer {
margin-right: 17px;
}
}
li.active > a {
background: #3B6DCC;
}
}
.dropdown-menu {
max-height: 300px;
overflow-x: hidden;
overflow-y: auto;
&:after, &:before {
border-width: 0;
}
}
}
li.dropdown.user-avatar {
.dropdown-menu {
left: auto;
right: 0;
}
}
}
.nav-account-controls li ul li a:hover i {
background-image: none;
text-decoration: none;
}
.divider-vertical {
border-left-color: #222;
border-right-color: #555;
display: none;
}
}
.app-view-taglib .lfr-header-row-content .select-all-entries {
left: 7px;
top: 14px;
}
.navbar {
.btn-group, .navbar-search {
margin-bottom: 8px;
margin-top: 8px;
}
.btn-navbar {
padding: 10px;
}
.container .btn-navbar {
background: transparent;
border-color: #DDD;
&:hover, &:focus, &:active, &.active, &.disabled, &[disabled] {
background-color: #DDD;
}
.icon-bar {
background: #656565;
}
}
.icon-caret-down {
background: #27A7EB;
background: rgba(255, 255, 255, 0.2);
font-size: 14px;
height: auto;
margin-left: 5px;
padding: 1px 4px;
width: auto;
}
.nav > li.open > a {
background-color: #FFF;
color: #555;
text-decoration: none;
}
.navbar-inner {
min-height: 47px;
}
}
/* ---------- Nav#Navigation ---------- */
.modify-pages .delete-tab {
background: #555;
border: 2px solid #FFF;
color: #FFF;
font-size: 16px;
padding: 4px;
right: -10px;
top: 0;
z-index: 300;
&:hover {
@include box-shadow(0 1px 1px -1px #000)
}
}
/* ---------- Breadcrumbs ---------- */
.breadcrumb {
padding: 3px 15px 2px;
li {
a {
display: inline-block;
@include ellipsis;
line-height: normal;
max-width: 300px;
vertical-align: text-bottom;
}
span.divider {
color: #999;
font-weight: bold;
}
&.last {
a {
color: #676767;
}
span.divider {
display: none;
}
}
}
.only .divider {
display: none;
}
&.breadcrumb-horizontal {
@include respond-to(phone) {
padding-left: 5px;
padding-right: 5px;
li {
display: none;
&.only, &.first, &.last, &.current-parent {
display: inline-block;
}
&.breadcrumb-truncate {
&.only, &.first a, &.last a, &.active, &.current-parent a {
max-width: 65px;
}
&.current-parent:before {
color: #999;
content: ' ... / ';
font-weight: bold;
}
}
}
}
}
}
/* ---------- Form navigator ---------- */
.taglib-form-navigator > .form-steps > ul.form-navigator.well .tab {
&.active {
.tab-label {
.message {
color: #000;
}
.number {
background: #60BFEF;
}
.tab-icon {
color: #60BFEF;
}
}
}
&.section-error .tab-label .message {
color: #B50303;
}
.tab-label {
.message {
color: #000;
}
.number {
background: #CCC;
color: #FFF;
}
}
}
@include respond-to(phone, tablet) {
.taglib-form-navigator {
.form-navigator-content {
clear: both;
float: none;
width: 100%;
}
.form-navigator.nav.well {
border-width: 1px 0 0;
@include box-shadow(none);
clear: both;
float: none;
margin: 1em 0 0;
padding: 1em 0.5em;
width: 100%;
> li {
display: inline-block;
> a {
margin: 0;
padding: 0.1em 1em;
}
}
}
.nobr {
white-space: normal;
}
}
}
/* ---------- Hidden accessible ---------- */
#banner h2, #banner h3, .site-breadcrumbs h1 {
clip: rect(0 0 0 0);
position: absolute;
}
.opens-new-window-accessible {
background: url(@theme_image_path@/common/open_window.png) no-repeat 0 50%;
display: inline-block;
font-size: 0;
height: 11px;
margin-left: 2px;
overflow: hidden;
text-indent: -9999px;
vertical-align: top;
width: 11px;
}
.nav-header {
background-color: #E5E5E5;
border: solid #DDD;
border-width: 1px 0;
@include ellipsis;
}
.accordion .accordion-group {
.accordion-heading .accordion-toggle {
padding-left: 15px;
}
.toggler-content-expanded {
border-width: 1px 0 0 0;
}
}
%toggler-header-icon-base {
content: $chevron-sign-right;
@include icon-FontAwesome();
display: inline-block;
margin-right: 5px;
}
%toggler-header-icon-expanded {
content: $chevron-sign-down;
}
.accordion-group {
border-width: 0;
.accordion-heading {
background: none no-repeat 0 50%;
overflow: hidden;
.accordion-toggle {
&, &:hover {
text-decoration: none;
}
}
&.toggler-header-collapsed, &.toggler-header-expanded {
background-image: none;
.accordion-toggle:before {
@extend %toggler-header-icon-base;
@include opacity(0.5);
}
}
&.toggler-header-collapsed {
position: relative;
.accordion-toggle:after {
content: '';
margin-left: 10px;
position: absolute;
top: 50%;
width: 100%;
}
}
&.toggler-header-expanded .accordion-toggle:before {
@extend %toggler-header-icon-expanded;
}
}
.toggler-content-expanded {
border: 1px solid $borderColor;
.accordion-inner {
border-width: 0;
}
}
&.lfr-panel-extended {
border-width: 1px;
.accordion-heading {
background: #F2F2F2;
overflow: hidden;
position: static;
.accordion-toggle {
color: #999;
padding-left: 8px;
&:after, &:before {
float: right;
font-size: 22px;
}
}
}
}
}
.accordion-heading .accordion-toggle {
padding-left: 0;
}
.toggler-content-collapsed {
display: none;
}
body.yui3-skin-sam .yui3-widget-mask {
background-color: #FFF;
}
&.ie {
.dockbar, #navigation {
.navbar-inner {
filter: none;
}
}
}
&.ie6, &.ie7 {
.accordion-group .accordion-heading {
background: none no-repeat 0 50%;
&.toggler-header-collapsed {
background-image: url(../images/arrows/05_right.png);
}
&.toggler-header-expanded {
background-image: url(../images/arrows/05_down.png);
}
}
}
/* ---------- Side accordion navigations ---------- */
.add-content-menu, .lfr-edit-layout-panel, .panel-page-menu .portlet-borderless-container {
.accordion {
background: #FFF;
border: solid #D3D3D3;
border-width: 0 1px;
.accordion-group {
border-width: 0;
margin-bottom: 0;
.accordion-heading {
cursor: pointer;
.accordion-toggle {
font-size: 16px;
font-weight: 300;
padding: 0;
}
}
.accordion-inner {
background: #FCFCFC;
border: solid #D3D3D3;
border-width: 0 0 1px 0;
padding: 6px 0 15px;
}
.toggler-header {
background: #F2F2F2;
border: solid #D3D3D3;
border-width: 1px 0;
margin-top: -1px;
padding: 6px 10px;
@include user-select(none);
.accordion-toggle {
background: #F2F2F2 url(../images/arrows/13_right.png) no-repeat 100% -20px;
}
}
.toggler-header-collapsed .accordion-toggle {
background-position: 100% 0;
&:before {
display: none;
}
}
.toggler-header-expanded .accordion-toggle:before {
display: none;
}
}
.toggler-content-expanded {
border-width: 0;
}
}
}
.lfr-add-panel {
.add-content-menu {
.lfr-content-item {
color: #009AE5;
&:focus, &:hover {
background-color: #E5F5FC;
}
&.lfr-portlet-used {
color: #BBB;
}
}
}
.lfr-page-template .lfr-page-template-title {
&.toggler-header-collapsed, &.toggler-header-expanded {
&:before {
@extend %toggler-header-icon-base;
color: #8D8D8D;
position: absolute;
right: 5px;
top: 0;
}
}
&.toggler-header-expanded {
&:before {
@extend %toggler-header-icon-expanded;
}
}
&.active {
&:before {
color: #FFF;
}
}
}
}
.lfr-add-panel, .lfr-device-preview-panel, .lfr-edit-layout-panel {
&.lfr-admin-panel h1 {
color: #009AE5;
font-size: 26px;
font-weight: normal;
line-height: 26px;
}
}
/* ---------- CKEditor ---------- */
.html-editor.portlet-message-boards {
a {
font-weight: inherit;
}
}
/* ---------- Extras ---------- */
.breadcrumb > li {
@include text-shadow(none);
}
.taglib-form-navigator > .form-steps > ul.form-navigator.well .tab {
&.section-error, &.section-success {
.tab-label .number {
@include transition-duration(0.25s);
@include transition-property(box-shadow);
@include transition-timing-function(ease-out);
}
}
&.section-error .tab-label .number {
@include box-shadow(0 0 5px 0 #B50303);
}
&.section-success .tab-label .number {
@include box-shadow(0 0 5px 0 #488F06);
}
.tab-label {
&:hover, &:focus {
.number {
@include box-shadow(0 0 5px 0 #60BFEF);
}
}
}
}
.modify-pages .delete-tab {
@include border-radius(50%);
@include text-shadow(none);
}
.nav-header {
background-color: #FFF;
@include background-image(linear-gradient(#FFF 0%, #F2F2F2 100%));
}
.portlet-options {
&, &.open {
.dropdown-toggle {
@include box-shadow(none);
}
}
}
.table {
@include border-radius(5px);
}
input.search-query {
border-radius: 15px;
}
.tagselector-focused .tagselector-content .textboxlistentry-holder {
@include box-shadow(inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6));
}
.dockbar {
.nav {
> li {
> a {
@include text-shadow(none);
}
}
li.dropdown {
.dropdown-menu {
@include border-radius(0);
}
}
}
.container .btn, .nav li.dropdown.user-avatar {
.user-avatar-image {
@include border-radius(50%);
@include box-shadow(0 0 0 2px #5594E0);
}
}
}
.navbar {
.container .btn {
&, .icon-bar {
@include box-shadow(0 1px 0 #FFF);
}
}
.icon-caret-down {
@include border-radius(50%);
}
.nav {
> li.open > a {
@include box-shadow(inset 0 3px 8px rgba(0, 0, 0, 0.125));
}
}
}
.dockbar .container .btn {
@include box-shadow(none);
}
body.yui3-skin-sam .yui3-widget-mask {
@include opacity(0.8);
}
}

BIN
src/main/webapp/images/.DS_Store vendored Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 706 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

@ -0,0 +1,47 @@
/*
* Author: Massimiliano Assante, CNR-ISTI
* */
/*The following function simply injects the Liferay object fields userId and scopeGroupId in the XMLHttpRequest header.
* So that every ajax call performed in the page has those parameters set.*/
function injectClientContext() {
if (Liferay != null) {
var userId;
var groupId;
if (Liferay.ThemeDisplay.isSignedIn()) {
userId = Liferay.ThemeDisplay.getUserId();
groupId = Liferay.ThemeDisplay.getScopeGroupId();
console.log("groupid is = " + groupId);
}
else {
groupId = Liferay.ThemeDisplay.getScopeGroupId();
//console.log('Not logged in, injecting groupId only');
}
//attach the 3 header params in all the XHR sends
(function(send) {
XMLHttpRequest.prototype.send = function(data) {
this.setRequestHeader("gcube-userId", userId);
this.setRequestHeader("gcube-vreid", groupId);
this.setRequestHeader("gcube-request-url", location.href);
send.call(this, data);
};
})(XMLHttpRequest.prototype.send);
}
}
/*
* Override the expire function of the Liferay.Session javascript object. It makes the default behaviour and then open a modal
* */
$(function () {
AUI().use('liferay-session', function(A) {
if(Liferay.Session) {
console.log('Liferay session default overridden');
Liferay.Session.expire = function() {
var instance = this;
instance.set('sessionState', 'expired', {});
$("#expirationModal").css("display", "block");
$("#expirationModal").modal({backdrop: 'static', keyboard: false},'show');
$("body div.alert.alert-block.popup-alert-warning.alert-error").html("Due to inactivity your session has expired, please <a class='refresh' href=''>Refresh</a>");
};
}
});
});

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,12 @@
#* This text, as part of a multi-line comment, is not visible
#set ($css_class = "${css_class} dockbar-split")
*#
#if ($theme.getSetting("div-wrapper-image-name") !="")
#set ($div-wrapper-image-name = $themeDisplay.getPathThemeImages() + "/custom/" + $theme.getSetting("div-wrapper-image-name"))
#else
#set ($div-wrapper-image-name = $themeDisplay.getPathThemeImages() + "/custom/default_background.jpg")
#end

View File

@ -0,0 +1,179 @@
<!DOCTYPE html>
#parse ($init)
<html class="$root_css_class" dir="#language ("lang.dir")" lang="$w3c_language_id">
<head>
<title>$themeDisplay.getSiteGroupName() - $the_title</title>
<meta content="initial-scale=1.0, width=device-width" name="viewport" />
<meta property="og:title" content="$the_title - $themeDisplay.getSiteGroupName()" />
<meta property="og:type" content="article" />
<meta property="og:description" content="$themeDisplay.getLayout().getGroup().getDescription()" />
<meta property="og:url" content="$site_default_url" />
<meta property="og:image" content="$site_logo" />
$theme.include($top_head_include)
<script type="text/javascript" src="$javascript_folder/jquery-1.12.3.min.js"></script>
<script type="text/javascript" src="$javascript_folder/gcube-context.js"></script>
<style>
#if ($theme.getSetting("portlet-topper-css-attributes") !="")
.aui .portlet-topper .portlet-title {
$theme.getSetting("portlet-topper-css-attributes")
}
#end
#if ($theme.getSetting("body-background-color") !="")
.aui body {
background-color: $theme.getSetting("body-background-color");
}
#end
#if ($theme.getSetting("div-wrapper-css-attributes") !="")
.aui div#wrapper {
$theme.getSetting("div-wrapper-css-attributes")
}
#end
#if ($theme.getSetting("header-background-css-attributes") !="")
.aui header#banner {
$theme.getSetting("header-background-css-attributes");
}
#end
#if ($theme.getSetting("navbar-background-color") !="")
.aui #navigation .navbar-inner, .aui #navigation .nav .dropdown-menu {
background: $theme.getSetting("navbar-background-color");
}
#end
#if ($theme.getSetting("navbar-tabselected-color") !="")
.aui #navigation .nav li.active > a {
background-color: $theme.getSetting("navbar-tabselected-color");
}
#end
#if ($theme.getSetting("navbar-tabhover-color") !="")
.aui #navigation .nav li.open > a {
background-color: $theme.getSetting("navbar-tabhover-color");
}
#end
#if ($theme.getSetting("footer-background-color") !="")
.aui .custom-footer {
background-color: $theme.getSetting("footer-background-color");
}
#end
#if ($theme.getSetting("login-button-color") !="")
.aui .portlet-login button.login-sign-in-button {
background-color: $theme.getSetting("login-button-color");
padding: 8px;
}
.aui .portlet-login button.login-sign-in-button:hover {
opacity: 0.8;
}
#end
</style>
</head>
<body class="$css_class">
<!-- start customisation -->
<div class="modal" id="expirationModal" tabindex="-1" role="dialog" style="display: none;">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="label">Your session expired!</h4>
</div>
<div class="modal-body">
<div style="text-align:center; margin-bottom: 50px;">
<i class="icon-time" style="color: #AAA; font-size: 10em;"></i>
</div>
<div style="font-size: 18px; text-align:center; margin-bottom: 50px;">
Please try <a href="javascript:location.reload();">reload</a> this page or <a href="/c/portal/logout">logout</a>
</div>
</div>
</div>
</div>
</div>
<script>
injectClientContext();
</script>
<!-- end customisation -->
<a href="#main-content" id="skip-to-content">#language ("skip-to-content")</a>
$theme.include($body_top_include)
<div id="gcube-hide-dockbar">
#dockbar()
</div>
#if($is_signed_in)
<div class="feedback-container"><a href="http://support.d4science.org" target="_blank"><span>Report an issue</span><a></div>
#end
<header id="banner" role="banner">
#if ($theme.getSetting("show-powered-d4science") == "true")
<div class="poweredBy-link">
<a href="http://www.d4science.org" target="_blank" class="$logo_css_class">
<img src="$themeDisplay.getPathThemeImages()/custom/powered-by-d4science.png" alt="D4Science Infrastructure" hspace="5" />
</a>
</div>
#end
<div id="heading">
<h1 class="site-title">
<a class="$logo_css_class" href="$themeDisplay.getPortalURL()" title="#language_format ("go-to-x", ["D4Science Gateway"])">
<img alt="$logo_description" src="$site_logo" class="d4science-logo"/>
</a>
</h1>
<h2 class="page-title">
<span>$the_title</span>
</h2>
</div>
#if ($has_navigation || $is_signed_in)
#parse ("$full_templates_path/navigation.vm")
#end
</header>
<div class="container-fluid" id="wrapper" style="background-image: url($div-wrapper-image-name)" >
<div id="content">
<!-- nav id="breadcrumbs">#breadcrumbs()</nav -->
#if ($selectable)
$theme.include($content_include)
#else
$portletDisplay.recycle()
$portletDisplay.setTitle($the_title)
$theme.wrapPortlet("portlet.vm", $content_include)
#end
</div>
</div>
<footer class="custom-footer">
<div class="custom-footer-container">
<a href="/terms-of-use">Terms of Use</a> |
<a href="/cookie-policy">Cookies Policy</a> |
<a target="_blank" href="https://www.iubenda.com/privacy-policy/441050">Privacy Policy</a> |
<a target="_blank" href="$theme.getSetting("footer-website-url")">$theme.getSetting("footer-website-name")</a>
</div>
<div style="float:right; text-align: right;">
<div class="custom-footer-container">Con il contributo del Fondo Territori Lavoro e Conoscenza CGIL CISL UIL</div>
<img src="$themeDisplay.getPathThemeImages()/custom/CGIL.png" style="width: 50px;" alt="CGIL" hspace="5" />
<img src="$themeDisplay.getPathThemeImages()/custom/cisl.png" style="width: 50px;" alt="CISL" hspace="5" />
<img src="$themeDisplay.getPathThemeImages()/custom/uil.jpeg" style="width: 50px;" alt="UIL" hspace="5" />
<div class="custom-footer-container">Partner:</div>
<img src="$themeDisplay.getPathThemeImages()/custom/citta_aquila.png" style="width: 150px;" alt="Città dell'Aquila" hspace="5" />
<img src="$themeDisplay.getPathThemeImages()/custom/logo-univaq.png" style="width: 50px;" alt="Università dell'Aquila" hspace="5" />
<img src="$themeDisplay.getPathThemeImages()/custom/SoBigData.png" style="width: 150px;" alt="SoBigData Plus Plus" hspace="5" />
<div style="color: #CCC; font-size: 12px;">$theme.getSetting("footer-text-about")</div>
</div>
</footer>
$theme.include($body_bottom_include)
$theme.include($bottom_include)
</body>
</html>

View File

@ -0,0 +1,25 @@
#set ($portlet_display = $portletDisplay)
#set ($portlet_id = $htmlUtil.escapeAttribute($portlet_display.getId()))
#set ($portlet_title = $htmlUtil.escape($portlet_display.getTitle()))
#set ($portlet_back_url = $htmlUtil.escapeHREF($portlet_display.getURLBack()))
<section class="portlet" id="portlet_$portlet_id">
<header class="portlet-topper">
<h1 class="portlet-title">
$theme.portletIconPortlet() <span class="portlet-title-text">$portlet_title</span>
</h1>
<menu class="portlet-topper-toolbar" id="portlet-topper-toolbar_$portlet_id" type="toolbar">
#if ($portlet_display.isShowBackIcon())
<a class="portlet-icon-back" href="$portlet_back_url">#language ("return-to-full-page")</a>
#else
$theme.portletIconOptions()
#end
</menu>
</header>
<div class="portlet-content">
$portlet_display.writeContent($writer)
</div>
</section>