first commit
This commit is contained in:
commit
174566c0ed
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="src" output="target/classes" path="src/main/java">
|
||||
<attributes>
|
||||
<attribute name="optional" value="true"/>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
|
||||
<attributes>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" output="target/test-classes" path="src/test/java">
|
||||
<attributes>
|
||||
<attribute name="optional" value="true"/>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
<attribute name="test" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
|
||||
<attributes>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
|
||||
<attributes>
|
||||
<attribute name="maven.pomderived" value="true"/>
|
||||
<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="output" path="target/classes"/>
|
||||
</classpath>
|
|
@ -0,0 +1 @@
|
|||
/target/
|
|
@ -0,0 +1,37 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>vlabs-display-portlet2</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.wst.common.project.facet.core.builder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.wst.validation.validationbuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.m2e.core.maven2Builder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
|
||||
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
<nature>org.eclipse.m2e.core.maven2Nature</nature>
|
||||
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
|
||||
<nature>org.eclipse.wst.jsdt.core.jsNature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry excluding="**/bower_components/*|**/node_modules/*|**/*.min.js" kind="src" path="src/main/webapp"/>
|
||||
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.JRE_CONTAINER"/>
|
||||
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.WebProject">
|
||||
<attributes>
|
||||
<attribute name="hide" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.baseBrowserLibrary"/>
|
||||
<classpathentry kind="output" path=""/>
|
||||
</classpath>
|
|
@ -0,0 +1,4 @@
|
|||
eclipse.preferences.version=1
|
||||
encoding//src/main/java=UTF-8
|
||||
encoding//src/main/resources=UTF-8
|
||||
encoding/<project>=UTF-8
|
|
@ -0,0 +1,11 @@
|
|||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
|
||||
org.eclipse.jdt.core.compiler.compliance=1.8
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
|
||||
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore
|
||||
org.eclipse.jdt.core.compiler.release=disabled
|
||||
org.eclipse.jdt.core.compiler.source=1.8
|
|
@ -0,0 +1,3 @@
|
|||
eclipse.preferences.version=1
|
||||
validateFragments=false
|
||||
validation.use-project-settings=true
|
|
@ -0,0 +1,4 @@
|
|||
activeProfiles=
|
||||
eclipse.preferences.version=1
|
||||
resolveWorkspaceProjects=true
|
||||
version=1
|
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
|
||||
<wb-module deploy-name="vlabs-display-portlet">
|
||||
<wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/>
|
||||
<wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/>
|
||||
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/>
|
||||
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/>
|
||||
<property name="context-root" value="vlabs-display-portlet"/>
|
||||
<property name="java-output-path" value="/vlabs-display-portlet2/target/classes"/>
|
||||
</wb-module>
|
||||
</project-modules>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<faceted-project>
|
||||
<fixed facet="wst.jsdt.web"/>
|
||||
<installed facet="java" version="1.8"/>
|
||||
<installed facet="jst.web" version="2.4"/>
|
||||
<installed facet="wst.jsdt.web" version="1.0"/>
|
||||
<installed facet="liferay.portlet" version="6.0"/>
|
||||
</faceted-project>
|
|
@ -0,0 +1 @@
|
|||
org.eclipse.wst.jsdt.launching.baseBrowserLibrary
|
|
@ -0,0 +1 @@
|
|||
Window
|
|
@ -0,0 +1,2 @@
|
|||
disabled=06target
|
||||
eclipse.preferences.version=1
|
|
@ -0,0 +1,10 @@
|
|||
|
||||
# Changelog for SBD Upload and Share Portlet
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
|
||||
## [v1.0.0-SNAPSHOT] - 2023-03-03
|
||||
|
||||
First Release
|
|
@ -0,0 +1,26 @@
|
|||
# Acknowledgments
|
||||
|
||||
The projects leading to this software have received funding from a series of European Union programmes including:
|
||||
|
||||
- the Sixth Framework Programme for Research and Technological Development
|
||||
- [DILIGENT](https://cordis.europa.eu/project/id/004260) (grant no. 004260).
|
||||
- the Seventh Framework Programme for research, technological development and demonstration
|
||||
- [D4Science](https://cordis.europa.eu/project/id/212488) (grant no. 212488);
|
||||
- [D4Science-II](https://cordis.europa.eu/project/id/239019) (grant no.239019);
|
||||
- [ENVRI](https://cordis.europa.eu/project/id/283465) (grant no. 283465);
|
||||
- [iMarine](https://cordis.europa.eu/project/id/283644) (grant no. 283644);
|
||||
- [EUBrazilOpenBio](https://cordis.europa.eu/project/id/288754) (grant no. 288754).
|
||||
- the H2020 research and innovation programme
|
||||
- [SoBigData](https://cordis.europa.eu/project/id/654024) (grant no. 654024);
|
||||
- [PARTHENOS](https://cordis.europa.eu/project/id/654119) (grant no. 654119);
|
||||
- [EGI-Engage](https://cordis.europa.eu/project/id/654142) (grant no. 654142);
|
||||
- [ENVRI PLUS](https://cordis.europa.eu/project/id/654182) (grant no. 654182);
|
||||
- [BlueBRIDGE](https://cordis.europa.eu/project/id/675680) (grant no. 675680);
|
||||
- [PerformFISH](https://cordis.europa.eu/project/id/727610) (grant no. 727610);
|
||||
- [AGINFRA PLUS](https://cordis.europa.eu/project/id/731001) (grant no. 731001);
|
||||
- [DESIRA](https://cordis.europa.eu/project/id/818194) (grant no. 818194);
|
||||
- [ARIADNEplus](https://cordis.europa.eu/project/id/823914) (grant no. 823914);
|
||||
- [RISIS 2](https://cordis.europa.eu/project/id/824091) (grant no. 824091);
|
||||
- [EOSC-Pillar](https://cordis.europa.eu/project/id/857650) (grant no. 857650);
|
||||
- [Blue Cloud](https://cordis.europa.eu/project/id/862409) (grant no. 862409);
|
||||
- [SoBigData-PlusPlus](https://cordis.europa.eu/project/id/871042) (grant no. 871042);
|
|
@ -0,0 +1,311 @@
|
|||
#European Union Public Licence V.1.1
|
||||
|
||||
##*EUPL © the European Community 2007*
|
||||
|
||||
|
||||
This **European Union Public Licence** (the **“EUPL”**) applies to the Work or Software
|
||||
(as defined below) which is provided under the terms of this Licence. Any use of
|
||||
the Work, other than as authorised under this Licence is prohibited (to the
|
||||
extent such use is covered by a right of the copyright holder of the Work).
|
||||
|
||||
The Original Work is provided under the terms of this Licence when the Licensor
|
||||
(as defined below) has placed the following notice immediately following the
|
||||
copyright notice for the Original Work:
|
||||
|
||||
**Licensed under the EUPL V.1.1**
|
||||
|
||||
or has expressed by any other mean his willingness to license under the EUPL.
|
||||
|
||||
|
||||
|
||||
##1. Definitions
|
||||
|
||||
In this Licence, the following terms have the following meaning:
|
||||
|
||||
- The Licence: this Licence.
|
||||
|
||||
- The Original Work or the Software: the software distributed and/or
|
||||
communicated by the Licensor under this Licence, available as Source Code and
|
||||
also as Executable Code as the case may be.
|
||||
|
||||
- Derivative Works: the works or software that could be created by the Licensee,
|
||||
based upon the Original Work or modifications thereof. This Licence does not
|
||||
define the extent of modification or dependence on the Original Work required
|
||||
in order to classify a work as a Derivative Work; this extent is determined by
|
||||
copyright law applicable in the country mentioned in Article 15.
|
||||
|
||||
- The Work: the Original Work and/or its Derivative Works.
|
||||
|
||||
- The Source Code: the human-readable form of the Work which is the most
|
||||
convenient for people to study and modify.
|
||||
|
||||
- The Executable Code: any code which has generally been compiled and which is
|
||||
meant to be interpreted by a computer as a program.
|
||||
|
||||
- The Licensor: the natural or legal person that distributes and/or communicates
|
||||
the Work under the Licence.
|
||||
|
||||
- Contributor(s): any natural or legal person who modifies the Work under the
|
||||
Licence, or otherwise contributes to the creation of a Derivative Work.
|
||||
|
||||
- The Licensee or “You”: any natural or legal person who makes any usage of the
|
||||
Software under the terms of the Licence.
|
||||
|
||||
- Distribution and/or Communication: any act of selling, giving, lending,
|
||||
renting, distributing, communicating, transmitting, or otherwise making
|
||||
available, on-line or off-line, copies of the Work or providing access to its
|
||||
essential functionalities at the disposal of any other natural or legal
|
||||
person.
|
||||
|
||||
|
||||
|
||||
##2. Scope of the rights granted by the Licence
|
||||
|
||||
The Licensor hereby grants You a world-wide, royalty-free, non-exclusive,
|
||||
sub-licensable licence to do the following, for the duration of copyright vested
|
||||
in the Original Work:
|
||||
|
||||
- use the Work in any circumstance and for all usage, reproduce the Work, modify
|
||||
- the Original Work, and make Derivative Works based upon the Work, communicate
|
||||
- to the public, including the right to make available or display the Work or
|
||||
- copies thereof to the public and perform publicly, as the case may be, the
|
||||
- Work, distribute the Work or copies thereof, lend and rent the Work or copies
|
||||
- thereof, sub-license rights in the Work or copies thereof.
|
||||
|
||||
Those rights can be exercised on any media, supports and formats, whether now
|
||||
known or later invented, as far as the applicable law permits so.
|
||||
|
||||
In the countries where moral rights apply, the Licensor waives his right to
|
||||
exercise his moral right to the extent allowed by law in order to make effective
|
||||
the licence of the economic rights here above listed.
|
||||
|
||||
The Licensor grants to the Licensee royalty-free, non exclusive usage rights to
|
||||
any patents held by the Licensor, to the extent necessary to make use of the
|
||||
rights granted on the Work under this Licence.
|
||||
|
||||
|
||||
|
||||
##3. Communication of the Source Code
|
||||
|
||||
The Licensor may provide the Work either in its Source Code form, or as
|
||||
Executable Code. If the Work is provided as Executable Code, the Licensor
|
||||
provides in addition a machine-readable copy of the Source Code of the Work
|
||||
along with each copy of the Work that the Licensor distributes or indicates, in
|
||||
a notice following the copyright notice attached to the Work, a repository where
|
||||
the Source Code is easily and freely accessible for as long as the Licensor
|
||||
continues to distribute and/or communicate the Work.
|
||||
|
||||
|
||||
|
||||
##4. Limitations on copyright
|
||||
|
||||
Nothing in this Licence is intended to deprive the Licensee of the benefits from
|
||||
any exception or limitation to the exclusive rights of the rights owners in the
|
||||
Original Work or Software, of the exhaustion of those rights or of other
|
||||
applicable limitations thereto.
|
||||
|
||||
|
||||
|
||||
##5. Obligations of the Licensee
|
||||
|
||||
The grant of the rights mentioned above is subject to some restrictions and
|
||||
obligations imposed on the Licensee. Those obligations are the following:
|
||||
|
||||
Attribution right: the Licensee shall keep intact all copyright, patent or
|
||||
trademarks notices and all notices that refer to the Licence and to the
|
||||
disclaimer of warranties. The Licensee must include a copy of such notices and a
|
||||
copy of the Licence with every copy of the Work he/she distributes and/or
|
||||
communicates. The Licensee must cause any Derivative Work to carry prominent
|
||||
notices stating that the Work has been modified and the date of modification.
|
||||
|
||||
Copyleft clause: If the Licensee distributes and/or communicates copies of the
|
||||
Original Works or Derivative Works based upon the Original Work, this
|
||||
Distribution and/or Communication will be done under the terms of this Licence
|
||||
or of a later version of this Licence unless the Original Work is expressly
|
||||
distributed only under this version of the Licence. The Licensee (becoming
|
||||
Licensor) cannot offer or impose any additional terms or conditions on the Work
|
||||
or Derivative Work that alter or restrict the terms of the Licence.
|
||||
|
||||
Compatibility clause: If the Licensee Distributes and/or Communicates Derivative
|
||||
Works or copies thereof based upon both the Original Work and another work
|
||||
licensed under a Compatible Licence, this Distribution and/or Communication can
|
||||
be done under the terms of this Compatible Licence. For the sake of this clause,
|
||||
“Compatible Licence” refers to the licences listed in the appendix attached to
|
||||
this Licence. Should the Licensee’s obligations under the Compatible Licence
|
||||
conflict with his/her obligations under this Licence, the obligations of the
|
||||
Compatible Licence shall prevail.
|
||||
|
||||
Provision of Source Code: When distributing and/or communicating copies of the
|
||||
Work, the Licensee will provide a machine-readable copy of the Source Code or
|
||||
indicate a repository where this Source will be easily and freely available for
|
||||
as long as the Licensee continues to distribute and/or communicate the Work.
|
||||
|
||||
Legal Protection: This Licence does not grant permission to use the trade names,
|
||||
trademarks, service marks, or names of the Licensor, except as required for
|
||||
reasonable and customary use in describing the origin of the Work and
|
||||
reproducing the content of the copyright notice.
|
||||
|
||||
|
||||
|
||||
##6. Chain of Authorship
|
||||
|
||||
The original Licensor warrants that the copyright in the Original Work granted
|
||||
hereunder is owned by him/her or licensed to him/her and that he/she has the
|
||||
power and authority to grant the Licence.
|
||||
|
||||
Each Contributor warrants that the copyright in the modifications he/she brings
|
||||
to the Work are owned by him/her or licensed to him/her and that he/she has the
|
||||
power and authority to grant the Licence.
|
||||
|
||||
Each time You accept the Licence, the original Licensor and subsequent
|
||||
Contributors grant You a licence to their contributions to the Work, under the
|
||||
terms of this Licence.
|
||||
|
||||
|
||||
|
||||
##7. Disclaimer of Warranty
|
||||
|
||||
The Work is a work in progress, which is continuously improved by numerous
|
||||
contributors. It is not a finished work and may therefore contain defects or
|
||||
“bugs” inherent to this type of software development.
|
||||
|
||||
For the above reason, the Work is provided under the Licence on an “as is” basis
|
||||
and without warranties of any kind concerning the Work, including without
|
||||
limitation merchantability, fitness for a particular purpose, absence of defects
|
||||
or errors, accuracy, non-infringement of intellectual property rights other than
|
||||
copyright as stated in Article 6 of this Licence.
|
||||
|
||||
This disclaimer of warranty is an essential part of the Licence and a condition
|
||||
for the grant of any rights to the Work.
|
||||
|
||||
|
||||
|
||||
##8. Disclaimer of Liability
|
||||
|
||||
Except in the cases of wilful misconduct or damages directly caused to natural
|
||||
persons, the Licensor will in no event be liable for any direct or indirect,
|
||||
material or moral, damages of any kind, arising out of the Licence or of the use
|
||||
of the Work, including without limitation, damages for loss of goodwill, work
|
||||
stoppage, computer failure or malfunction, loss of data or any commercial
|
||||
damage, even if the Licensor has been advised of the possibility of such
|
||||
damage. However, the Licensor will be liable under statutory product liability
|
||||
laws as far such laws apply to the Work.
|
||||
|
||||
|
||||
|
||||
##9. Additional agreements
|
||||
|
||||
While distributing the Original Work or Derivative Works, You may choose to
|
||||
conclude an additional agreement to offer, and charge a fee for, acceptance of
|
||||
support, warranty, indemnity, or other liability obligations and/or services
|
||||
consistent with this Licence. However, in accepting such obligations, You may
|
||||
act only on your own behalf and on your sole responsibility, not on behalf of
|
||||
the original Licensor or any other Contributor, and only if You agree to
|
||||
indemnify, defend, and hold each Contributor harmless for any liability incurred
|
||||
by, or claims asserted against such Contributor by the fact You have accepted
|
||||
any such warranty or additional liability.
|
||||
|
||||
|
||||
|
||||
##10. Acceptance of the Licence
|
||||
|
||||
The provisions of this Licence can be accepted by clicking on an icon “I agree”
|
||||
placed under the bottom of a window displaying the text of this Licence or by
|
||||
affirming consent in any other similar way, in accordance with the rules of
|
||||
applicable law. Clicking on that icon indicates your clear and irrevocable
|
||||
acceptance of this Licence and all of its terms and conditions.
|
||||
|
||||
Similarly, you irrevocably accept this Licence and all of its terms and
|
||||
conditions by exercising any rights granted to You by Article 2 of this Licence,
|
||||
such as the use of the Work, the creation by You of a Derivative Work or the
|
||||
Distribution and/or Communication by You of the Work or copies thereof.
|
||||
|
||||
|
||||
|
||||
##11. Information to the public
|
||||
|
||||
In case of any Distribution and/or Communication of the Work by means of
|
||||
electronic communication by You (for example, by offering to download the Work
|
||||
from a remote location) the distribution channel or media (for example, a
|
||||
website) must at least provide to the public the information requested by the
|
||||
applicable law regarding the Licensor, the Licence and the way it may be
|
||||
accessible, concluded, stored and reproduced by the Licensee.
|
||||
|
||||
|
||||
|
||||
##12. Termination of the Licence
|
||||
|
||||
The Licence and the rights granted hereunder will terminate automatically upon
|
||||
any breach by the Licensee of the terms of the Licence.
|
||||
|
||||
Such a termination will not terminate the licences of any person who has
|
||||
received the Work from the Licensee under the Licence, provided such persons
|
||||
remain in full compliance with the Licence.
|
||||
|
||||
|
||||
|
||||
##13. Miscellaneous
|
||||
|
||||
Without prejudice of Article 9 above, the Licence represents the complete
|
||||
agreement between the Parties as to the Work licensed hereunder.
|
||||
|
||||
If any provision of the Licence is invalid or unenforceable under applicable
|
||||
law, this will not affect the validity or enforceability of the Licence as a
|
||||
whole. Such provision will be construed and/or reformed so as necessary to make
|
||||
it valid and enforceable.
|
||||
|
||||
The European Commission may publish other linguistic versions and/or new
|
||||
versions of this Licence, so far this is required and reasonable, without
|
||||
reducing the scope of the rights granted by the Licence. New versions of the
|
||||
Licence will be published with a unique version number.
|
||||
|
||||
All linguistic versions of this Licence, approved by the European Commission,
|
||||
have identical value. Parties can take advantage of the linguistic version of
|
||||
their choice.
|
||||
|
||||
|
||||
|
||||
##14. Jurisdiction
|
||||
|
||||
Any litigation resulting from the interpretation of this License, arising
|
||||
between the European Commission, as a Licensor, and any Licensee, will be
|
||||
subject to the jurisdiction of the Court of Justice of the European Communities,
|
||||
as laid down in article 238 of the Treaty establishing the European Community.
|
||||
|
||||
Any litigation arising between Parties, other than the European Commission, and
|
||||
resulting from the interpretation of this License, will be subject to the
|
||||
exclusive jurisdiction of the competent court where the Licensor resides or
|
||||
conducts its primary business.
|
||||
|
||||
|
||||
|
||||
##15. Applicable Law
|
||||
|
||||
This Licence shall be governed by the law of the European Union country where
|
||||
the Licensor resides or has his registered office.
|
||||
|
||||
This licence shall be governed by the Belgian law if:
|
||||
|
||||
- a litigation arises between the European Commission, as a Licensor, and any
|
||||
- Licensee; the Licensor, other than the European Commission, has no residence
|
||||
- or registered office inside a European Union country.
|
||||
|
||||
|
||||
---
|
||||
|
||||
|
||||
##Appendix
|
||||
|
||||
|
||||
**“Compatible Licences”** according to article 5 EUPL are:
|
||||
|
||||
|
||||
- GNU General Public License (GNU GPL) v. 2
|
||||
|
||||
- Open Software License (OSL) v. 2.1, v. 3.0
|
||||
|
||||
- Common Public License v. 1.0
|
||||
|
||||
- Eclipse Public License v. 1.0
|
||||
|
||||
- Cecill v. 2.0
|
|
@ -0,0 +1,42 @@
|
|||
# gCube System - VLABs display Portlet
|
||||
|
||||
This component is a Liferay 6.2.6 CE Porlet which iinteracts with the VRE Modeler service during new VRE Creations
|
||||
## Structure of the project
|
||||
|
||||
* The source code is present in the src folder.
|
||||
|
||||
## Built With
|
||||
|
||||
* [OpenJDK](https://openjdk.java.net/) - The JDK used
|
||||
* [Maven](https://maven.apache.org/) - Dependency Management
|
||||
|
||||
## Documentation
|
||||
|
||||
* No Documentation is provided
|
||||
|
||||
## Change log
|
||||
|
||||
See [Releases](https://code-repo.d4science.org/gCubeSystem/sbd-uploadshare-portlet/releases).
|
||||
|
||||
## Authors
|
||||
|
||||
* **Massimiliano Assante** - [ISTI-CNR Infrascience Group](http://nemis.isti.cnr.it/groups/infrascience)
|
||||
|
||||
## Maintainers
|
||||
|
||||
* **Massimiliano Assante** - [ISTI-CNR Infrascience Group](http://nemis.isti.cnr.it/groups/infrascience)
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the EUPL V.1.1 License - see the [LICENSE.md](LICENSE.md) file for details.
|
||||
|
||||
|
||||
## About the gCube Framework
|
||||
This software is part of the [gCubeFramework](https://www.gcube-system.org/ "gCubeFramework"): an
|
||||
open-source software toolkit used for building and operating Hybrid Data
|
||||
Infrastructures enabling the dynamic deployment of Virtual Research Environments
|
||||
by favouring the realisation of reuse oriented policies.
|
||||
|
||||
The projects leading to this software have received funding from a series of European Union programmes see [FUNDING.md](FUNDING.md)
|
||||
|
||||
|
|
@ -0,0 +1,136 @@
|
|||
<?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>
|
||||
<artifactId>maven-parent</artifactId>
|
||||
<groupId>org.gcube.tools</groupId>
|
||||
<version>1.1.0</version>
|
||||
<relativePath />
|
||||
</parent>
|
||||
<groupId>org.gcube.portlets.user</groupId>
|
||||
<artifactId>vlabs-display-portlet</artifactId>
|
||||
<packaging>war</packaging>
|
||||
<name>VLabs Display Portlet</name>
|
||||
<version>1.0.0-SNAPSHOT</version>
|
||||
<description>
|
||||
VLabs Display Portle
|
||||
</description>
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||
<maven.compiler.source>1.8</maven.compiler.source>
|
||||
<maven.compiler.target>1.8</maven.compiler.target>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<liferay.version>6.2.5</liferay.version>
|
||||
<liferay.maven.plugin.version>6.2.10.12</liferay.maven.plugin.version>
|
||||
</properties>
|
||||
<scm>
|
||||
<connection>scm:git:https://code-repo.d4science.org/gCubeSystem/${project.artifactId}.git</connection>
|
||||
<developerConnection>scm:git:https://code-repo.d4science.org/gCubeSystem/${project.artifactId}.git</developerConnection>
|
||||
<url>https://code-repo.d4science.org/gCubeSystem/${project.artifactId}</url>
|
||||
</scm>
|
||||
<dependencyManagement>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.gcube.distribution</groupId>
|
||||
<artifactId>maven-portal-bom</artifactId>
|
||||
<version>3.6.4-SNAPSHOT</version>
|
||||
<type>pom</type>
|
||||
<scope>import</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</dependencyManagement>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.gcube.common.portal</groupId>
|
||||
<artifactId>portal-manager</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.gcube.dvos</groupId>
|
||||
<artifactId>usermanagement-core</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.liferay.portal</groupId>
|
||||
<artifactId>portal-service</artifactId>
|
||||
<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>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.portlet</groupId>
|
||||
<artifactId>portlet-api</artifactId>
|
||||
<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>
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>jstl</artifactId>
|
||||
<version>1.2</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<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>
|
||||
</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>
|
||||
<pluginType>portlet</pluginType>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<configuration>
|
||||
<encoding>UTF-8</encoding>
|
||||
<source>${maven.compiler.source}</source>
|
||||
<target>${maven.compiler.target}</target>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-resources-plugin</artifactId>
|
||||
<version>2.5</version>
|
||||
<configuration>
|
||||
<encoding>UTF-8</encoding>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
|
@ -0,0 +1,48 @@
|
|||
package org.gcube.portlets.user.vlabs;
|
||||
|
||||
import org.gcube.common.portal.GCubePortalConstants;
|
||||
import org.gcube.vomanagement.usermanagement.GroupManager;
|
||||
import org.gcube.vomanagement.usermanagement.impl.LiferayGroupManager;
|
||||
import org.gcube.vomanagement.usermanagement.model.GCubeGroup;
|
||||
import org.gcube.vomanagement.usermanagement.model.GroupMembershipType;
|
||||
|
||||
import com.liferay.portal.kernel.log.Log;
|
||||
import com.liferay.portal.kernel.log.LogFactoryUtil;
|
||||
import com.liferay.portal.model.User;
|
||||
import com.liferay.portal.service.GroupLocalServiceUtil;
|
||||
|
||||
public class Utils {
|
||||
private static Log _log = LogFactoryUtil.getLog(Utils.class);
|
||||
/**
|
||||
*
|
||||
* @param currentUser
|
||||
* @param urlContainingGroupId
|
||||
* @return the access policy and the direct VRE Url if the member belongs to the VRE, the page to ask for registration on this VRE othwerise
|
||||
*/
|
||||
public static VLabBean getVLabBean(User currentUser, String urlContainingGroupId) {
|
||||
VLabBean toReturn = new VLabBean();
|
||||
toReturn.setFriendlyURL("");
|
||||
String[] splits = urlContainingGroupId.split("=");
|
||||
long groupId = -1;
|
||||
try {
|
||||
if (splits.length > 0) {
|
||||
groupId = Long.parseLong(splits[1]);
|
||||
GroupManager gm = new LiferayGroupManager();
|
||||
GCubeGroup theGroup = gm.getGroup(groupId);
|
||||
GroupMembershipType ap =theGroup.getMembershipType();
|
||||
System.out.println("Access Policy for " + theGroup.getGroupName() + ": " + ap.name());
|
||||
toReturn.setAccessPolicy(ap);
|
||||
long[] userGroupIds = currentUser.getGroupIds();
|
||||
for (int i = 0; i < userGroupIds.length; i++) {
|
||||
if (groupId == userGroupIds[i])
|
||||
toReturn.setFriendlyURL(GCubePortalConstants.PREFIX_GROUP_URL +GroupLocalServiceUtil.getGroup(groupId).getFriendlyURL());
|
||||
}
|
||||
}
|
||||
toReturn.setFriendlyURL(urlContainingGroupId);
|
||||
} catch (Exception e) {
|
||||
_log.error("Something is wrong in the url passed: " + urlContainingGroupId);
|
||||
return toReturn;
|
||||
}
|
||||
return toReturn;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,45 @@
|
|||
package org.gcube.portlets.user.vlabs;
|
||||
|
||||
import org.gcube.vomanagement.usermanagement.model.GroupMembershipType;
|
||||
|
||||
public class VLabBean {
|
||||
|
||||
private GroupMembershipType accessPolicy;
|
||||
private String friendlyURL;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public VLabBean() {
|
||||
super();
|
||||
// TODO Auto-generated constructor stub
|
||||
}
|
||||
/**
|
||||
* @param accessPolicy
|
||||
* @param friendlyURL
|
||||
*/
|
||||
public VLabBean(GroupMembershipType accessPolicy, String friendlyURL) {
|
||||
super();
|
||||
this.accessPolicy = accessPolicy;
|
||||
this.friendlyURL = friendlyURL;
|
||||
}
|
||||
public GroupMembershipType getAccessPolicy() {
|
||||
return accessPolicy;
|
||||
}
|
||||
public void setAccessPolicy(GroupMembershipType accessPolicy) {
|
||||
this.accessPolicy = accessPolicy;
|
||||
}
|
||||
public String getFriendlyURL() {
|
||||
return friendlyURL;
|
||||
}
|
||||
public void setFriendlyURL(String friendlyURL) {
|
||||
this.friendlyURL = friendlyURL;
|
||||
}
|
||||
@Override
|
||||
public String toString() {
|
||||
return "VLabBean [accessPolicy=" + accessPolicy + ", friendlyURL=" + friendlyURL + "]";
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
package org.gcube.portlets.user.vlabs;
|
||||
|
||||
import com.liferay.portal.kernel.log.Log;
|
||||
import com.liferay.portal.kernel.log.LogFactoryUtil;
|
||||
import com.liferay.util.bridges.mvc.MVCPortlet;
|
||||
|
||||
/**
|
||||
* Portlet implementation class VLabsDisplay
|
||||
*/
|
||||
public class VLabsDisplay extends MVCPortlet {
|
||||
private static Log _log = LogFactoryUtil.getLog(VLabsDisplay.class);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
package org.gcube.portlets.user.vlabs;
|
||||
import javax.portlet.ActionRequest;
|
||||
import javax.portlet.ActionResponse;
|
||||
import javax.portlet.PortletConfig;
|
||||
import javax.portlet.PortletPreferences;
|
||||
import javax.portlet.RenderRequest;
|
||||
import javax.portlet.RenderResponse;
|
||||
|
||||
import com.liferay.portal.kernel.log.Log;
|
||||
import com.liferay.portal.kernel.log.LogFactoryUtil;
|
||||
import com.liferay.portal.kernel.portlet.DefaultConfigurationAction;
|
||||
|
||||
public class VLabsDisplayConfigurationAction extends DefaultConfigurationAction {
|
||||
private static Log _log = LogFactoryUtil.getLog(VLabsDisplayConfigurationAction.class);
|
||||
@Override
|
||||
public void processAction(PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {
|
||||
super.processAction(portletConfig, actionRequest, actionResponse);
|
||||
PortletPreferences prefs = actionRequest.getPreferences();
|
||||
String icondocURL = prefs.getValue("icondocURL", "0");
|
||||
_log.info("icondocURL = " + icondocURL + " in ConfigurationAction.processAction() saved correctly");
|
||||
|
||||
String exploratoryName1Title = prefs.getValue("exploratoryName1-Title", "");
|
||||
_log.info("exploratoryName1-Title = " + exploratoryName1Title + " in ConfigurationAction.processAction() saved correctly");
|
||||
String exploratoryName2Title = prefs.getValue("exploratoryName2-Title", "");
|
||||
_log.info("exploratoryName2-Title = " + exploratoryName2Title + " in ConfigurationAction.processAction() saved correctly");
|
||||
String exploratoryName3Title = prefs.getValue("exploratoryName3-Title", "");
|
||||
_log.info("exploratoryName3-Title = " + exploratoryName3Title + " in ConfigurationAction.processAction() saved correctly");
|
||||
String exploratoryName4Title = prefs.getValue("exploratoryName4-Title", "");
|
||||
_log.info("exploratoryName4-Title = " + exploratoryName4Title + " in ConfigurationAction.processAction() saved correctly");
|
||||
String exploratoryName5Title = prefs.getValue("exploratoryName5-Title", "");
|
||||
_log.info("exploratoryName5-Title = " + exploratoryName5Title + " in ConfigurationAction.processAction() saved correctly");
|
||||
|
||||
|
||||
long exploratoryName1DocumentId = Long.parseLong(prefs.getValue("exploratoryName1-DocumentId", "0"));
|
||||
_log.info("exploratoryName1-DocumentId = " + exploratoryName1DocumentId + " in ConfigurationAction.processAction() saved correctly");
|
||||
long exploratoryName2DocumentId = Long.parseLong(prefs.getValue("exploratoryName2-DocumentId", "0"));
|
||||
_log.info("exploratoryName2-DocumentId = " + exploratoryName2DocumentId + " in ConfigurationAction.processAction() saved correctly");
|
||||
long exploratoryName3DocumentId = Long.parseLong(prefs.getValue("exploratoryName3-DocumentId", "0"));
|
||||
_log.info("exploratoryName3-DocumentId = " + exploratoryName3DocumentId + " in ConfigurationAction.processAction() saved correctly");
|
||||
long exploratoryName4DocumentId = Long.parseLong(prefs.getValue("exploratoryName4-DocumentId", "0"));
|
||||
_log.info("exploratoryName4-DocumentId = " + exploratoryName4DocumentId + " in ConfigurationAction.processAction() saved correctly");
|
||||
long exploratoryName5DocumentId = Long.parseLong(prefs.getValue("exploratoryName5-DocumentId", "0"));
|
||||
_log.info("exploratoryName4-DocumentId = " + exploratoryName5DocumentId + " in ConfigurationAction.processAction() saved correctly");
|
||||
|
||||
|
||||
String exploratory1Url = prefs.getValue("exploratory1-Url", "");
|
||||
_log.info("exploratory1-Url = " + exploratory1Url + " in ConfigurationAction.processAction() saved correctly");
|
||||
String exploratory2Url = prefs.getValue("exploratory2-Url", "");
|
||||
_log.info("exploratory2-Url = " + exploratory2Url + " in ConfigurationAction.processAction() saved correctly");
|
||||
String exploratory3Url = prefs.getValue("exploratory3-Url", "");
|
||||
_log.info("exploratory3-Url = " + exploratory3Url + " in ConfigurationAction.processAction() saved correctly");
|
||||
String exploratory4Url = prefs.getValue("exploratory4-Url", "");
|
||||
_log.info("exploratory4-Url = " + exploratory4Url + " in ConfigurationAction.processAction() saved correctly");
|
||||
String exploratory5Url = prefs.getValue("exploratory5-Url", "");
|
||||
_log.info("exploratory5-Url = " + exploratory5Url + " in ConfigurationAction.processAction() saved correctly");
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public String render(PortletConfig portletConfig,
|
||||
RenderRequest renderRequest, RenderResponse renderResponse)
|
||||
throws Exception {
|
||||
return "/html/vlabsdisplay/config.jsp";
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0"?>
|
||||
<!DOCTYPE display PUBLIC "-//Liferay//DTD Display 6.2.0//EN" "http://www.liferay.com/dtd/liferay-display_6_2_0.dtd">
|
||||
|
||||
<display>
|
||||
<category name="Virtual Labs">
|
||||
<portlet id="vlabs-display-portlet" />
|
||||
</category>
|
||||
</display>
|
|
@ -0,0 +1,11 @@
|
|||
name=vlabs-display-portlet
|
||||
module-group-id=liferay
|
||||
module-incremental-version=1
|
||||
tags=
|
||||
short-description=
|
||||
change-log=
|
||||
page-url=https://gcube-system.org
|
||||
author=M. Assante
|
||||
licenses=EUPL
|
||||
portal-dependency-jars=\
|
||||
vaadin.jar
|
|
@ -0,0 +1,35 @@
|
|||
<?xml version="1.0"?>
|
||||
<!DOCTYPE liferay-portlet-app PUBLIC "-//Liferay//DTD Portlet Application 6.2.0//EN" "http://www.liferay.com/dtd/liferay-portlet-app_6_2_0.dtd">
|
||||
|
||||
<liferay-portlet-app>
|
||||
<portlet>
|
||||
<portlet-name>vlabs-display-portlet</portlet-name>
|
||||
<icon>/icon.png</icon>
|
||||
<configuration-action-class>org.gcube.portlets.user.vlabs.VLabsDisplayConfigurationAction</configuration-action-class>
|
||||
<instanceable>true</instanceable>
|
||||
<requires-namespaced-parameters>false</requires-namespaced-parameters>
|
||||
<header-portlet-css>/css/main.css</header-portlet-css>
|
||||
<footer-portlet-javascript>
|
||||
/js/main.js
|
||||
</footer-portlet-javascript>
|
||||
<css-class-wrapper>
|
||||
virtual-labs-widget
|
||||
</css-class-wrapper>
|
||||
</portlet>
|
||||
<role-mapper>
|
||||
<role-name>administrator</role-name>
|
||||
<role-link>Administrator</role-link>
|
||||
</role-mapper>
|
||||
<role-mapper>
|
||||
<role-name>guest</role-name>
|
||||
<role-link>Guest</role-link>
|
||||
</role-mapper>
|
||||
<role-mapper>
|
||||
<role-name>power-user</role-name>
|
||||
<role-link>Power User</role-link>
|
||||
</role-mapper>
|
||||
<role-mapper>
|
||||
<role-name>user</role-name>
|
||||
<role-link>User</role-link>
|
||||
</role-mapper>
|
||||
</liferay-portlet-app>
|
|
@ -0,0 +1,42 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd" version="2.0">
|
||||
<portlet>
|
||||
<portlet-name>vlabs-display-portlet</portlet-name>
|
||||
<display-name>Virtual Labs Display</display-name>
|
||||
<portlet-class>
|
||||
org.gcube.portlets.user.vlabs.VLabsDisplay
|
||||
</portlet-class>
|
||||
<init-param>
|
||||
<name>view-template</name>
|
||||
<value>/html/vlabsdisplay/view.jsp</value>
|
||||
</init-param>
|
||||
<init-param>
|
||||
<name>config-template</name>
|
||||
<value>/html/vlabsdisplay/config.jsp</value>
|
||||
</init-param>
|
||||
<expiration-cache>0</expiration-cache>
|
||||
<supports>
|
||||
<mime-type>text/html</mime-type>
|
||||
<portlet-mode>view</portlet-mode>
|
||||
<portlet-mode>config</portlet-mode>
|
||||
</supports>
|
||||
<portlet-info>
|
||||
<title>Virtual Labs Display</title>
|
||||
<short-title>Virtual Labs Display</short-title>
|
||||
<keywords></keywords>
|
||||
</portlet-info>
|
||||
<security-role-ref>
|
||||
<role-name>administrator</role-name>
|
||||
</security-role-ref>
|
||||
<security-role-ref>
|
||||
<role-name>guest</role-name>
|
||||
</security-role-ref>
|
||||
<security-role-ref>
|
||||
<role-name>power-user</role-name>
|
||||
</security-role-ref>
|
||||
<security-role-ref>
|
||||
<role-name>user</role-name>
|
||||
</security-role-ref>
|
||||
</portlet>
|
||||
</portlet-app>
|
|
@ -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>
|
|
@ -0,0 +1,36 @@
|
|||
.virtual-labs-widget .asset-title {
|
||||
border-bottom: 1px solid #DDD;
|
||||
margin-right: 8px;
|
||||
padding-bottom: 1px;
|
||||
}
|
||||
|
||||
.virtual-labs-widget .asset-summary {
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
font-size: 14px;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
.virtual-labs-widget .access-policy {
|
||||
float: right;
|
||||
font-size: 13px;
|
||||
font-weight: 300;
|
||||
padding: 10px;
|
||||
line-height: 17px;
|
||||
height: 17px;
|
||||
}
|
||||
|
||||
.open-color {
|
||||
color: #008000;
|
||||
}
|
||||
|
||||
.restricted-color {
|
||||
color: #f2994a;
|
||||
}
|
||||
|
||||
.private-color {
|
||||
color: #AAA;
|
||||
}
|
||||
|
||||
.virtual-labs-widget .access-policy img {
|
||||
width: 14px;
|
||||
}
|
|
@ -0,0 +1,306 @@
|
|||
<%@include file="init.jsp"%>
|
||||
|
||||
<liferay-portlet:actionURL portletConfiguration="true"
|
||||
var="configurationURL" />
|
||||
|
||||
Here you can customise the icon to show besides the vlab name
|
||||
|
||||
<%
|
||||
String icondocURL = GetterUtil.getString(portletPreferences.getValue("icondocURL", StringPool.BLANK));
|
||||
|
||||
String vlabName1Title = GetterUtil.getString(portletPreferences.getValue("vlabName1-Title", StringPool.BLANK));
|
||||
String vlabName2Title = GetterUtil.getString(portletPreferences.getValue("vlabName2-Title", StringPool.BLANK));
|
||||
String vlabName3Title = GetterUtil.getString(portletPreferences.getValue("vlabName3-Title", StringPool.BLANK));
|
||||
String vlabName4Title = GetterUtil.getString(portletPreferences.getValue("vlabName4-Title", StringPool.BLANK));
|
||||
String vlabName5Title = GetterUtil.getString(portletPreferences.getValue("vlabName5-Title", StringPool.BLANK));
|
||||
String vlabName6Title = GetterUtil.getString(portletPreferences.getValue("vlabName6-Title", StringPool.BLANK));
|
||||
String vlabName7Title = GetterUtil.getString(portletPreferences.getValue("vlabName7-Title", StringPool.BLANK));
|
||||
String vlabName8Title = GetterUtil.getString(portletPreferences.getValue("vlabName8-Title", StringPool.BLANK));
|
||||
String vlabName9Title = GetterUtil.getString(portletPreferences.getValue("vlabName9-Title", StringPool.BLANK));
|
||||
|
||||
|
||||
long vlabName1DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName1-DocumentId", StringPool.BLANK));
|
||||
long vlabName2DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName2-DocumentId", StringPool.BLANK));
|
||||
long vlabName3DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName3-DocumentId", StringPool.BLANK));
|
||||
long vlabName4DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName4-DocumentId", StringPool.BLANK));
|
||||
long vlabName5DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName5-DocumentId", StringPool.BLANK));
|
||||
long vlabName6DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName6-DocumentId", StringPool.BLANK));
|
||||
long vlabName7DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName7-DocumentId", StringPool.BLANK));
|
||||
long vlabName8DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName8-DocumentId", StringPool.BLANK));
|
||||
long vlabName9DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName9-DocumentId", StringPool.BLANK));
|
||||
|
||||
|
||||
String vlab1Url = GetterUtil.getString(portletPreferences.getValue("vlab1-Url", StringPool.BLANK));
|
||||
String vlab2Url = GetterUtil.getString(portletPreferences.getValue("vlab2-Url", StringPool.BLANK));
|
||||
String vlab3Url = GetterUtil.getString(portletPreferences.getValue("vlab3-Url", StringPool.BLANK));
|
||||
String vlab4Url = GetterUtil.getString(portletPreferences.getValue("vlab4-Url", StringPool.BLANK));
|
||||
String vlab5Url = GetterUtil.getString(portletPreferences.getValue("vlab5-Url", StringPool.BLANK));
|
||||
String vlab6Url = GetterUtil.getString(portletPreferences.getValue("vlab6-Url", StringPool.BLANK));
|
||||
String vlab7Url = GetterUtil.getString(portletPreferences.getValue("vlab7-Url", StringPool.BLANK));
|
||||
String vlab8Url = GetterUtil.getString(portletPreferences.getValue("vlab8-Url", StringPool.BLANK));
|
||||
String vlab9Url = GetterUtil.getString(portletPreferences.getValue("vlab9-Url", StringPool.BLANK));
|
||||
|
||||
|
||||
|
||||
String displayName_cfg = "";
|
||||
%>
|
||||
|
||||
<aui:form action="<%=configurationURL%>" method="post" name="fm">
|
||||
<aui:input name="<%=Constants.CMD%>" type="hidden"
|
||||
value="<%=Constants.UPDATE%>" />
|
||||
<aui:input name="preferences--icondocURL--" type="text"
|
||||
cssClass="text long-field" showRequiredLabel="true" label="Icon docId"
|
||||
inlineField="true" inlineLabel="left" placeholder="Relative URL of the image"
|
||||
helpMessage="Relative URL of the image taken from Liferay CMS of the icons"
|
||||
value="<%=icondocURL%>" required="false">
|
||||
|
||||
</aui:input>
|
||||
<p>Enter the vlab in the following:</p>
|
||||
<!-- vlab URL -->
|
||||
<aui:field-wrapper cssClass="field-group">
|
||||
<table>
|
||||
<tr>
|
||||
<td><aui:input name="preferences--vlabName1-Title--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Name 1" inlineField="true" inlineLabel="left"
|
||||
placeholder="vlab"
|
||||
helpMessage="Display Name of the vlab"
|
||||
value="<%=vlabName1Title%>" required="false" /></td>
|
||||
<td><aui:input
|
||||
name="preferences--vlabName1-DocumentId--" type="text"
|
||||
cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Document Id 1" inlineField="true"
|
||||
inlineLabel="left" placeholder="ID"
|
||||
helpMessage="ID taken from Liferay CMS in this Site"
|
||||
value="<%=vlabName1DocumentId%>" required="false">
|
||||
<aui:validator name="digits"></aui:validator>
|
||||
</aui:input></td>
|
||||
<td><aui:input name="preferences--vlab1-Url--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="URL of the VRE 1" inlineField="true" inlineLabel="left"
|
||||
placeholder="url" helpMessage="URL" value="<%=vlab1Url%>"
|
||||
required="false">
|
||||
</aui:input></td>
|
||||
</tr>
|
||||
</table>
|
||||
</aui:field-wrapper>
|
||||
<aui:field-wrapper cssClass="field-group">
|
||||
<table>
|
||||
<tr>
|
||||
<td><aui:input name="preferences--vlabName2-Title--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Name 2" inlineField="true" inlineLabel="left"
|
||||
placeholder="vlab"
|
||||
helpMessage="Display Name of the vlab"
|
||||
value="<%=vlabName2Title%>" required="false" /></td>
|
||||
<td><aui:input
|
||||
name="preferences--vlabName2-DocumentId--" type="text"
|
||||
cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Document Id 2" inlineField="true"
|
||||
inlineLabel="left" placeholder="ID"
|
||||
helpMessage="ID taken from Liferay CMS in this Site"
|
||||
value="<%=vlabName2DocumentId%>" required="false">
|
||||
<aui:validator name="digits"></aui:validator>
|
||||
</aui:input></td>
|
||||
<td><aui:input name="preferences--vlab2-Url--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="URL of the VRE 2" inlineField="true" inlineLabel="left"
|
||||
placeholder="url" helpMessage="URL" value="<%=vlab2Url%>"
|
||||
required="false">
|
||||
</aui:input></td>
|
||||
</tr>
|
||||
</table>
|
||||
</aui:field-wrapper>
|
||||
<aui:field-wrapper cssClass="field-group">
|
||||
<table>
|
||||
<tr>
|
||||
<td><aui:input name="preferences--vlabName3-Title--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Name 3" inlineField="true" inlineLabel="left"
|
||||
placeholder="vlab"
|
||||
helpMessage="Display Name of the vlab"
|
||||
value="<%=vlabName3Title%>" required="false" /></td>
|
||||
<td><aui:input
|
||||
name="preferences--vlabName3-DocumentId--" type="text"
|
||||
cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Document Id 3" inlineField="true"
|
||||
inlineLabel="left" placeholder="ID"
|
||||
helpMessage="ID taken from Liferay CMS in this Site"
|
||||
value="<%=vlabName3DocumentId%>" required="false">
|
||||
<aui:validator name="digits"></aui:validator>
|
||||
</aui:input></td>
|
||||
<td><aui:input name="preferences--vlab3-Url--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="URL of the VRE 3" inlineField="true" inlineLabel="left"
|
||||
placeholder="url" helpMessage="URL" value="<%=vlab3Url%>"
|
||||
required="false">
|
||||
</aui:input></td>
|
||||
</tr>
|
||||
</table>
|
||||
</aui:field-wrapper>
|
||||
<aui:field-wrapper cssClass="field-group">
|
||||
<table>
|
||||
<tr>
|
||||
<td><aui:input name="preferences--vlabName4-Title--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Name 4" inlineField="true" inlineLabel="left"
|
||||
placeholder="vlab"
|
||||
helpMessage="Display Name of the vlab"
|
||||
value="<%=vlabName4Title%>" required="false" /></td>
|
||||
<td><aui:input
|
||||
name="preferences--vlabName4-DocumentId--" type="text"
|
||||
cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Document Id 4" inlineField="true"
|
||||
inlineLabel="left" placeholder="ID"
|
||||
helpMessage="ID taken from Liferay CMS in this Site"
|
||||
value="<%=vlabName4DocumentId%>" required="false">
|
||||
<aui:validator name="digits"></aui:validator>
|
||||
</aui:input></td>
|
||||
<td><aui:input name="preferences--vlab4-Url--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="URL of the VRE 4" inlineField="true" inlineLabel="left"
|
||||
placeholder="url" helpMessage="URL" value="<%=vlab4Url%>"
|
||||
required="false">
|
||||
</aui:input></td>
|
||||
</tr>
|
||||
</table>
|
||||
</aui:field-wrapper>
|
||||
<aui:field-wrapper cssClass="field-group">
|
||||
<table>
|
||||
<tr>
|
||||
<td><aui:input name="preferences--vlabName5-Title--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Name 5" inlineField="true" inlineLabel="left"
|
||||
placeholder="vlab"
|
||||
helpMessage="Display Name of the vlab"
|
||||
value="<%=vlabName5Title%>" required="false" /></td>
|
||||
<td><aui:input
|
||||
name="preferences--vlabName5-DocumentId--" type="text"
|
||||
cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Document Id 5" inlineField="true"
|
||||
inlineLabel="left" placeholder="ID"
|
||||
helpMessage="ID taken from Liferay CMS in this Site"
|
||||
value="<%=vlabName5DocumentId%>" required="false">
|
||||
<aui:validator name="digits"></aui:validator>
|
||||
</aui:input></td>
|
||||
<td><aui:input name="preferences--vlab5-Url--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="URL of the VRE 5" inlineField="true" inlineLabel="left"
|
||||
placeholder="url" helpMessage="URL" value="<%=vlab5Url%>"
|
||||
required="false">
|
||||
</aui:input></td>
|
||||
</tr>
|
||||
</table>
|
||||
</aui:field-wrapper>
|
||||
<aui:field-wrapper cssClass="field-group">
|
||||
<table>
|
||||
<tr>
|
||||
<td><aui:input name="preferences--vlabName6-Title--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Name 6" inlineField="true" inlineLabel="left"
|
||||
placeholder="vlab"
|
||||
helpMessage="Display Name of the vlab"
|
||||
value="<%=vlabName6Title%>" required="false" /></td>
|
||||
<td><aui:input
|
||||
name="preferences--vlabName6-DocumentId--" type="text"
|
||||
cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Document Id 6" inlineField="true"
|
||||
inlineLabel="left" placeholder="ID"
|
||||
helpMessage="ID taken from Liferay CMS in this Site"
|
||||
value="<%=vlabName6DocumentId%>" required="false">
|
||||
<aui:validator name="digits"></aui:validator>
|
||||
</aui:input></td>
|
||||
<td><aui:input name="preferences--vlab6-Url--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="URL of the VRE 6" inlineField="true" inlineLabel="left"
|
||||
placeholder="url" helpMessage="URL" value="<%=vlab6Url%>"
|
||||
required="false">
|
||||
</aui:input></td>
|
||||
</tr>
|
||||
</table>
|
||||
</aui:field-wrapper>
|
||||
<aui:field-wrapper cssClass="field-group">
|
||||
<table>
|
||||
<tr>
|
||||
<td><aui:input name="preferences--vlabName7-Title--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Name 7" inlineField="true" inlineLabel="left"
|
||||
placeholder="vlab"
|
||||
helpMessage="Display Name of the vlab"
|
||||
value="<%=vlabName7Title%>" required="false" /></td>
|
||||
<td><aui:input
|
||||
name="preferences--vlabName7-DocumentId--" type="text"
|
||||
cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Document Id 7" inlineField="true"
|
||||
inlineLabel="left" placeholder="ID"
|
||||
helpMessage="ID taken from Liferay CMS in this Site"
|
||||
value="<%=vlabName7DocumentId%>" required="false">
|
||||
<aui:validator name="digits"></aui:validator>
|
||||
</aui:input></td>
|
||||
<td><aui:input name="preferences--vlab7-Url--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="URL of the VRE 7" inlineField="true" inlineLabel="left"
|
||||
placeholder="url" helpMessage="URL" value="<%=vlab7Url%>"
|
||||
required="false">
|
||||
</aui:input></td>
|
||||
</tr>
|
||||
</table>
|
||||
</aui:field-wrapper>
|
||||
<aui:field-wrapper cssClass="field-group">
|
||||
<table>
|
||||
<tr>
|
||||
<td><aui:input name="preferences--vlabName8-Title--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Name 8" inlineField="true" inlineLabel="left"
|
||||
placeholder="vlab"
|
||||
helpMessage="Display Name of the vlab"
|
||||
value="<%=vlabName8Title%>" required="false" /></td>
|
||||
<td><aui:input
|
||||
name="preferences--vlabName8-DocumentId--" type="text"
|
||||
cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Document Id 8" inlineField="true"
|
||||
inlineLabel="left" placeholder="ID"
|
||||
helpMessage="ID taken from Liferay CMS in this Site"
|
||||
value="<%=vlabName8DocumentId%>" required="false">
|
||||
<aui:validator name="digits"></aui:validator>
|
||||
</aui:input></td>
|
||||
<td><aui:input name="preferences--vlab8-Url--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="URL of the VRE 8" inlineField="true" inlineLabel="left"
|
||||
placeholder="url" helpMessage="URL" value="<%=vlab8Url%>"
|
||||
required="false">
|
||||
</aui:input></td>
|
||||
</tr>
|
||||
</table>
|
||||
</aui:field-wrapper>
|
||||
<aui:field-wrapper cssClass="field-group">
|
||||
<table>
|
||||
<tr>
|
||||
<td><aui:input name="preferences--vlabName9-Title--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Name 9" inlineField="true" inlineLabel="left"
|
||||
placeholder="vlab"
|
||||
helpMessage="Display Name of the vlab"
|
||||
value="<%=vlabName9Title%>" required="false" /></td>
|
||||
<td><aui:input
|
||||
name="preferences--vlabName9-DocumentId--" type="text"
|
||||
cssClass="text long-field" showRequiredLabel="true"
|
||||
label="vlab Document Id 9" inlineField="true"
|
||||
inlineLabel="left" placeholder="ID"
|
||||
helpMessage="ID taken from Liferay CMS in this Site"
|
||||
value="<%=vlabName9DocumentId%>" required="false">
|
||||
<aui:validator name="digits"></aui:validator>
|
||||
</aui:input></td>
|
||||
<td><aui:input name="preferences--vlab9-Url--"
|
||||
type="text" cssClass="text long-field" showRequiredLabel="true"
|
||||
label="URL of the VRE 9" inlineField="true" inlineLabel="left"
|
||||
placeholder="url" helpMessage="URL" value="<%=vlab9Url%>"
|
||||
required="false">
|
||||
</aui:input></td>
|
||||
</tr>
|
||||
</table>
|
||||
</aui:field-wrapper>
|
||||
<aui:button-row>
|
||||
<aui:button type="submit" />
|
||||
</aui:button-row>
|
||||
</aui:form>
|
|
@ -0,0 +1,22 @@
|
|||
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
|
||||
|
||||
<%@ taglib uri="http://liferay.com/tld/aui" prefix="aui" %>
|
||||
<%@ taglib uri="http://liferay.com/tld/portlet" prefix="liferay-portlet" %>
|
||||
<%@ taglib uri="http://liferay.com/tld/theme" prefix="liferay-theme" %>
|
||||
|
||||
|
||||
|
||||
<%@ page import="org.gcube.portlets.user.vlabs.VLabBean" %>
|
||||
<%@ page import="com.liferay.portal.kernel.util.Constants" %>
|
||||
<%@ page import="com.liferay.portal.kernel.util.GetterUtil" %>
|
||||
<%@ page import="com.liferay.portal.kernel.util.StringPool" %>
|
||||
<%@ page import="com.liferay.portlet.journal.model.JournalArticle" %>
|
||||
<%@ page import="com.liferay.portlet.journal.service.JournalArticleLocalServiceUtil" %>
|
||||
<%@ page import="com.liferay.portal.kernel.xml.Document" %>
|
||||
<%@ page import="com.liferay.portal.kernel.xml.Node" %>
|
||||
<%@ page import="com.liferay.portal.kernel.xml.SAXReaderUtil" %>
|
||||
<%@ page import="com.liferay.portal.kernel.util.HtmlUtil" %>
|
||||
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet"%>
|
||||
|
||||
<liferay-theme:defineObjects />
|
||||
<portlet:defineObjects />
|
|
@ -0,0 +1,420 @@
|
|||
<%@include file="init.jsp"%>
|
||||
<%@ page import="org.gcube.portlets.user.vlabs.Utils" %>
|
||||
<%@ page import="com.liferay.portal.model.User" %>
|
||||
<%@ page import="com.liferay.portal.util.PortalUtil" %>
|
||||
|
||||
<%
|
||||
final int abstractCharsLenghtMax = 256;
|
||||
|
||||
long groupId = themeDisplay.getLayout().getGroupId();
|
||||
User currentUser = PortalUtil.getUser( request );
|
||||
pageContext.setAttribute("icondocURL",
|
||||
GetterUtil.getString(portletPreferences.getValue("icondocURL", StringPool.BLANK)));
|
||||
|
||||
pageContext.setAttribute("vlabName1Title",
|
||||
GetterUtil.getString(portletPreferences.getValue("vlabName1-Title", StringPool.BLANK)));
|
||||
pageContext.setAttribute("vlabName2Title",
|
||||
GetterUtil.getString(portletPreferences.getValue("vlabName2-Title", StringPool.BLANK)));
|
||||
pageContext.setAttribute("vlabName3Title",
|
||||
GetterUtil.getString(portletPreferences.getValue("vlabName3-Title", StringPool.BLANK)));
|
||||
pageContext.setAttribute("vlabName4Title",
|
||||
GetterUtil.getString(portletPreferences.getValue("vlabName4-Title", StringPool.BLANK)));
|
||||
pageContext.setAttribute("vlabName5Title",
|
||||
GetterUtil.getString(portletPreferences.getValue("vlabName5-Title", StringPool.BLANK)));
|
||||
pageContext.setAttribute("vlabName6Title",
|
||||
GetterUtil.getString(portletPreferences.getValue("vlabName6-Title", StringPool.BLANK)));
|
||||
pageContext.setAttribute("vlabName7Title",
|
||||
GetterUtil.getString(portletPreferences.getValue("vlabName7-Title", StringPool.BLANK)));
|
||||
pageContext.setAttribute("vlabName8Title",
|
||||
GetterUtil.getString(portletPreferences.getValue("vlabName8-Title", StringPool.BLANK)));
|
||||
pageContext.setAttribute("vlabName9Title",
|
||||
GetterUtil.getString(portletPreferences.getValue("vlabName9-Title", StringPool.BLANK)));
|
||||
|
||||
|
||||
long vlabName1DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName1-DocumentId", StringPool.BLANK));
|
||||
long vlabName2DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName2-DocumentId", StringPool.BLANK));
|
||||
long vlabName3DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName3-DocumentId", StringPool.BLANK));
|
||||
long vlabName4DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName4-DocumentId", StringPool.BLANK));
|
||||
long vlabName5DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName5-DocumentId", StringPool.BLANK));
|
||||
long vlabName6DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName6-DocumentId", StringPool.BLANK));
|
||||
long vlabName7DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName7-DocumentId", StringPool.BLANK));
|
||||
long vlabName8DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName8-DocumentId", StringPool.BLANK));
|
||||
long vlabName9DocumentId = GetterUtil.getLong(portletPreferences.getValue("vlabName9-DocumentId", StringPool.BLANK));
|
||||
|
||||
|
||||
String url1 = GetterUtil.getString(portletPreferences.getValue("vlab1-Url", StringPool.BLANK));
|
||||
VLabBean vLabBean1 = Utils.getVLabBean(currentUser, url1);
|
||||
pageContext.setAttribute("vlab1Url", vLabBean1.getFriendlyURL());
|
||||
String ap1 = vLabBean1.getAccessPolicy().toString().toLowerCase();
|
||||
pageContext.setAttribute("ap1",ap1);
|
||||
|
||||
String url2 = GetterUtil.getString(portletPreferences.getValue("vlab2-Url", StringPool.BLANK));
|
||||
VLabBean vLabBean2 = Utils.getVLabBean(currentUser, url2);
|
||||
pageContext.setAttribute("vlab2Url", vLabBean2.getFriendlyURL());
|
||||
String ap2 = vLabBean2.getAccessPolicy().toString().toLowerCase();
|
||||
pageContext.setAttribute("ap2",ap2);
|
||||
|
||||
String url3 = GetterUtil.getString(portletPreferences.getValue("vlab3-Url", StringPool.BLANK));
|
||||
VLabBean vLabBean3 = Utils.getVLabBean(currentUser, url3);
|
||||
pageContext.setAttribute("vlab3Url", vLabBean3.getFriendlyURL());
|
||||
String ap3 = vLabBean3.getAccessPolicy().toString().toLowerCase();
|
||||
pageContext.setAttribute("ap3",ap3);
|
||||
|
||||
String url4 = GetterUtil.getString(portletPreferences.getValue("vlab4-Url", StringPool.BLANK));
|
||||
pageContext.setAttribute("vlab4Url", Utils.getVLabBean(currentUser, url4).getFriendlyURL());
|
||||
|
||||
String url5 = GetterUtil.getString(portletPreferences.getValue("vlab5-Url", StringPool.BLANK));
|
||||
pageContext.setAttribute("vlab5Url", Utils.getVLabBean(currentUser, url5).getFriendlyURL());
|
||||
|
||||
String url6 = GetterUtil.getString(portletPreferences.getValue("vlab6-Url", StringPool.BLANK));
|
||||
pageContext.setAttribute("vlab6Url", Utils.getVLabBean(currentUser, url6).getFriendlyURL());
|
||||
|
||||
String url7 = GetterUtil.getString(portletPreferences.getValue("vlab7-Url", StringPool.BLANK));
|
||||
pageContext.setAttribute("vlab7Url", Utils.getVLabBean(currentUser, url7).getFriendlyURL());
|
||||
|
||||
String url8 = GetterUtil.getString(portletPreferences.getValue("vlab8-Url", StringPool.BLANK));
|
||||
pageContext.setAttribute("vlab8Url", Utils.getVLabBean(currentUser, url8).getFriendlyURL());
|
||||
|
||||
String url9 = GetterUtil.getString(portletPreferences.getValue("vlab9-Url", StringPool.BLANK));
|
||||
pageContext.setAttribute("vlab9Url", Utils.getVLabBean(currentUser, url9).getFriendlyURL());
|
||||
|
||||
String content1 = "";
|
||||
if (vlabName1DocumentId > 0) {
|
||||
JournalArticle article = JournalArticleLocalServiceUtil.getArticle(groupId,
|
||||
"" + vlabName1DocumentId);
|
||||
Document document = SAXReaderUtil.read(article.getContent());
|
||||
Node node = document.selectSingleNode("/root/static-content");
|
||||
content1 = node.getText();
|
||||
}
|
||||
|
||||
String content2 = "";
|
||||
if (vlabName2DocumentId > 0) {
|
||||
JournalArticle article = JournalArticleLocalServiceUtil.getArticle(groupId,
|
||||
"" + vlabName2DocumentId);
|
||||
Document document = SAXReaderUtil.read(article.getContent());
|
||||
Node node = document.selectSingleNode("/root/static-content");
|
||||
content2 = node.getText();
|
||||
}
|
||||
|
||||
String content3 = "";
|
||||
if (vlabName3DocumentId > 0) {
|
||||
JournalArticle article = JournalArticleLocalServiceUtil.getArticle(groupId,
|
||||
"" + vlabName3DocumentId);
|
||||
Document document = SAXReaderUtil.read(article.getContent());
|
||||
Node node = document.selectSingleNode("/root/static-content");
|
||||
content3 = node.getText();
|
||||
}
|
||||
String content4 = "";
|
||||
if (vlabName4DocumentId > 0) {
|
||||
JournalArticle article = JournalArticleLocalServiceUtil.getArticle(groupId,
|
||||
"" + vlabName4DocumentId);
|
||||
Document document = SAXReaderUtil.read(article.getContent());
|
||||
Node node = document.selectSingleNode("/root/static-content");
|
||||
content4 = node.getText();
|
||||
}
|
||||
String content5 = "";
|
||||
if (vlabName5DocumentId > 0) {
|
||||
JournalArticle article = JournalArticleLocalServiceUtil.getArticle(groupId,
|
||||
"" + vlabName5DocumentId);
|
||||
Document document = SAXReaderUtil.read(article.getContent());
|
||||
Node node = document.selectSingleNode("/root/static-content");
|
||||
content4 = node.getText();
|
||||
}
|
||||
String content6 = "";
|
||||
if (vlabName6DocumentId > 0) {
|
||||
JournalArticle article = JournalArticleLocalServiceUtil.getArticle(groupId,
|
||||
"" + vlabName6DocumentId);
|
||||
Document document = SAXReaderUtil.read(article.getContent());
|
||||
Node node = document.selectSingleNode("/root/static-content");
|
||||
content4 = node.getText();
|
||||
}
|
||||
String content7 = "";
|
||||
if (vlabName4DocumentId > 0) {
|
||||
JournalArticle article = JournalArticleLocalServiceUtil.getArticle(groupId,
|
||||
"" + vlabName7DocumentId);
|
||||
Document document = SAXReaderUtil.read(article.getContent());
|
||||
Node node = document.selectSingleNode("/root/static-content");
|
||||
content4 = node.getText();
|
||||
}
|
||||
String content8 = "";
|
||||
if (vlabName8DocumentId > 0) {
|
||||
JournalArticle article = JournalArticleLocalServiceUtil.getArticle(groupId,
|
||||
"" + vlabName8DocumentId);
|
||||
Document document = SAXReaderUtil.read(article.getContent());
|
||||
Node node = document.selectSingleNode("/root/static-content");
|
||||
content4 = node.getText();
|
||||
}
|
||||
String content9 = "";
|
||||
if (vlabName9DocumentId > 0) {
|
||||
JournalArticle article = JournalArticleLocalServiceUtil.getArticle(groupId,
|
||||
"" + vlabName9DocumentId);
|
||||
Document document = SAXReaderUtil.read(article.getContent());
|
||||
Node node = document.selectSingleNode("/root/static-content");
|
||||
content4 = node.getText();
|
||||
}
|
||||
%>
|
||||
<c:if test="${not empty vlabName1Title}">
|
||||
|
||||
<div class="asset-abstract">
|
||||
<h3 class="asset-title">
|
||||
<a href="${vlab1Url}"><img alt="" src="${icondocURL}">
|
||||
${vlabName1Title}</a><span
|
||||
class="access-policy ${ap1}-color"><img
|
||||
src="<%=renderRequest.getContextPath()%>/images/${ap1}.png" /> ${ap1}</span>
|
||||
</h3>
|
||||
<div class="asset-content">
|
||||
<div class="asset-summary" style="margin-left: 25px;">
|
||||
<span id="asset-app-summarypre1"> <%
|
||||
if (content1.length() > abstractCharsLenghtMax)
|
||||
out.println(HtmlUtil.stripHtml(content1.substring(0, abstractCharsLenghtMax) + " ..."));
|
||||
%>
|
||||
<div>
|
||||
<a
|
||||
href="javascript:switchView('#asset-app-summarypre1', '#asset-app-summary-1');">Read
|
||||
More » </a>
|
||||
</div>
|
||||
</span>
|
||||
<div class="asset-more">
|
||||
<div id="asset-app-summary-1" class="asset-summary"
|
||||
style="display: none;"><%=content1%></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="asset-metadata"></div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
<c:if test="${not empty vlabName2Title}">
|
||||
<!-- SECOND -->
|
||||
<div class="asset-abstract">
|
||||
<h3 class="asset-title">
|
||||
<a href="${vlab2Url}"><img alt="" src="${icondocURL}">
|
||||
${vlabName2Title}</a><span
|
||||
class="access-policy ${ap2}-color"><img
|
||||
src="<%=renderRequest.getContextPath()%>/images/${ap2}.png" /> ${ap2}</span>
|
||||
</h3>
|
||||
<div class="asset-content">
|
||||
<div class="asset-summary" style="margin-left: 25px;">
|
||||
<span id="asset-app-summarypre2"> <%
|
||||
if (content2.length() > abstractCharsLenghtMax)
|
||||
out.println(HtmlUtil.stripHtml(content2.substring(0, abstractCharsLenghtMax) + " ..."));
|
||||
%>
|
||||
<div>
|
||||
<a
|
||||
href="javascript:switchView('#asset-app-summarypre2', '#asset-app-summary-2');">Read
|
||||
More » </a>
|
||||
</div>
|
||||
</span>
|
||||
<div class="asset-more">
|
||||
<div id="asset-app-summary-2" class="asset-summary"
|
||||
style="display: none;"><%=content2%></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="asset-metadata"></div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
<c:if test="${not empty vlabName3Title}">
|
||||
<!-- THIRD -->
|
||||
<div class="asset-abstract">
|
||||
<h3 class="asset-title">
|
||||
<a href="${vlab3Url}"><img alt="" src="${icondocURL}">
|
||||
${vlabName3Title}</a><span
|
||||
class="access-policy ${ap3}-color"><img
|
||||
src="<%=renderRequest.getContextPath()%>/images/${ap3}.png" /> ${ap3}</span>
|
||||
</h3>
|
||||
<div class="asset-content">
|
||||
<div class="asset-summary" style="margin-left: 25px;">
|
||||
<span id="asset-app-summarypre3"> <%
|
||||
if (content3.length() > abstractCharsLenghtMax)
|
||||
out.println(HtmlUtil.stripHtml(content3.substring(0, abstractCharsLenghtMax) + " ..."));
|
||||
%>
|
||||
<div>
|
||||
<a
|
||||
href="javascript:switchView('#asset-app-summarypre3', '#asset-app-summary-3');">Read
|
||||
More » </a>
|
||||
</div>
|
||||
</span>
|
||||
<div class="asset-more">
|
||||
<div id="asset-app-summary-3" class="asset-summary"
|
||||
style="display: none;"><%=content3%></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="asset-metadata"></div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
<c:if test="${not empty vlabName4Title}">
|
||||
<!-- THIRD -->
|
||||
<div class="asset-abstract">
|
||||
<h3 class="asset-title">
|
||||
<a href="${vlab4Url}"><img alt="" src="${icondocURL}">
|
||||
${vlabName4Title}</a>
|
||||
</h3>
|
||||
<div class="asset-content">
|
||||
<div class="asset-summary" style="margin-left: 25px;">
|
||||
<span id="asset-app-summarypre4"> <%
|
||||
if (content4.length() > abstractCharsLenghtMax)
|
||||
out.println(HtmlUtil.stripHtml(content4.substring(0, abstractCharsLenghtMax) + " ..."));
|
||||
%>
|
||||
<div>
|
||||
<a
|
||||
href="javascript:switchView('#asset-app-summarypre4', '#asset-app-summary-4');">Read
|
||||
More » </a>
|
||||
</div>
|
||||
</span>
|
||||
<div class="asset-more">
|
||||
<div id="asset-app-summary-4" class="asset-summary"
|
||||
style="display: none;"><%=content4%></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="asset-metadata"></div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
<c:if test="${not empty vlabName5Title}">
|
||||
<!-- THIRD -->
|
||||
<div class="asset-abstract">
|
||||
<h3 class="asset-title">
|
||||
<a href="${vlab5Url}"><img alt="" src="${icondocURL}">
|
||||
${vlabName5Title}</a>
|
||||
</h3>
|
||||
<div class="asset-content">
|
||||
<div class="asset-summary" style="margin-left: 25px;">
|
||||
<span id="asset-app-summarypre5"> <%
|
||||
if (content5.length() > abstractCharsLenghtMax)
|
||||
out.println(HtmlUtil.stripHtml(content5.substring(0, abstractCharsLenghtMax) + " ..."));
|
||||
%>
|
||||
<div>
|
||||
<a
|
||||
href="javascript:switchView('#asset-app-summarypre5', '#asset-app-summary-5');">Read
|
||||
More » </a>
|
||||
</div>
|
||||
</span>
|
||||
<div class="asset-more">
|
||||
<div id="asset-app-summary-5" class="asset-summary"
|
||||
style="display: none;"><%=content5%></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="asset-metadata"></div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
<c:if test="${not empty vlabName6Title}">
|
||||
<!-- THIRD -->
|
||||
<div class="asset-abstract">
|
||||
<h3 class="asset-title">
|
||||
<a href="${vlab6Url}"><img alt="" src="${icondocURL}">
|
||||
${vlabName6Title}</a>
|
||||
</h3>
|
||||
<div class="asset-content">
|
||||
<div class="asset-summary" style="margin-left: 25px;">
|
||||
<span id="asset-app-summarypre6"> <%
|
||||
if (content6.length() > abstractCharsLenghtMax)
|
||||
out.println(HtmlUtil.stripHtml(content6.substring(0, abstractCharsLenghtMax) + " ..."));
|
||||
%>
|
||||
<div>
|
||||
<a
|
||||
href="javascript:switchView('#asset-app-summarypre6', '#asset-app-summary-6');">Read
|
||||
More » </a>
|
||||
</div>
|
||||
</span>
|
||||
<div class="asset-more">
|
||||
<div id="asset-app-summary-6" class="asset-summary"
|
||||
style="display: none;"><%=content6%></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="asset-metadata"></div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
<c:if test="${not empty vlabName7Title}">
|
||||
<!-- THIRD -->
|
||||
<div class="asset-abstract">
|
||||
<h3 class="asset-title">
|
||||
<a href="${vlab7Url}"><img alt="" src="${icondocURL}">
|
||||
${vlabName7Title}</a>
|
||||
</h3>
|
||||
<div class="asset-content">
|
||||
<div class="asset-summary" style="margin-left: 25px;">
|
||||
<span id="asset-app-summarypre7"> <%
|
||||
if (content7.length() > abstractCharsLenghtMax)
|
||||
out.println(HtmlUtil.stripHtml(content7.substring(0, abstractCharsLenghtMax) + " ..."));
|
||||
%>
|
||||
<div>
|
||||
<a
|
||||
href="javascript:switchView('#asset-app-summarypre7', '#asset-app-summary-7');">Read
|
||||
More » </a>
|
||||
</div>
|
||||
</span>
|
||||
<div class="asset-more">
|
||||
<div id="asset-app-summary-7" class="asset-summary"
|
||||
style="display: none;"><%=content7%></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="asset-metadata"></div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
|
||||
<c:if test="${not empty vlabName8Title}">
|
||||
<!-- THIRD -->
|
||||
<div class="asset-abstract">
|
||||
<h3 class="asset-title">
|
||||
<a href="${vlab8Url}"><img alt="" src="${icondocURL}">
|
||||
${vlabName8Title}</a>
|
||||
</h3>
|
||||
<div class="asset-content">
|
||||
<div class="asset-summary" style="margin-left: 25px;">
|
||||
<span id="asset-app-summarypre8"> <%
|
||||
if (content8.length() > abstractCharsLenghtMax)
|
||||
out.println(HtmlUtil.stripHtml(content8.substring(0, abstractCharsLenghtMax) + " ..."));
|
||||
%>
|
||||
<div>
|
||||
<a
|
||||
href="javascript:switchView('#asset-app-summarypre8', '#asset-app-summary-8');">Read
|
||||
More » </a>
|
||||
</div>
|
||||
</span>
|
||||
<div class="asset-more">
|
||||
<div id="asset-app-summary-8" class="asset-summary"
|
||||
style="display: none;"><%=content8%></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="asset-metadata"></div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
|
||||
<c:if test="${not empty vlabName9Title}">
|
||||
<!-- THIRD -->
|
||||
<div class="asset-abstract">
|
||||
<h3 class="asset-title">
|
||||
<a href="${vlab9Url}"><img alt="" src="${icondocURL}">
|
||||
${vlabName9Title}</a>
|
||||
</h3>
|
||||
<div class="asset-content">
|
||||
<div class="asset-summary" style="margin-left: 25px;">
|
||||
<span id="asset-app-summarypre9"> <%
|
||||
if (content9.length() > abstractCharsLenghtMax)
|
||||
out.println(HtmlUtil.stripHtml(content9.substring(0, abstractCharsLenghtMax) + " ..."));
|
||||
%>
|
||||
<div>
|
||||
<a
|
||||
href="javascript:switchView('#asset-app-summarypre9', '#asset-app-summary-9');">Read
|
||||
More » </a>
|
||||
</div>
|
||||
</span>
|
||||
<div class="asset-more">
|
||||
<div id="asset-app-summary-4" class="asset-summary"
|
||||
style="display: none;"><%=content9%></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="asset-metadata"></div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
Binary file not shown.
After Width: | Height: | Size: 467 B |
Binary file not shown.
After Width: | Height: | Size: 2.2 KiB |
Binary file not shown.
After Width: | Height: | Size: 857 B |
Binary file not shown.
After Width: | Height: | Size: 862 B |
Loading…
Reference in New Issue