All Projects → keensoft → Alfresco Datalist Constraints

keensoft / Alfresco Datalist Constraints

Licence: lgpl-3.0
Use datalists to maintain Alfresco model constraints

Projects that are alternatives of or similar to Alfresco Datalist Constraints

Armscomponent Template
🛠️ 一键搭建 ArmsComponent 快速组件化方案的整体组件架构, 让新手也可以一秒开始组件化项目, 开发神器, 让您一秒起飞, 体验纯傻瓜式的组件化开发, 避免组件化从入门到放弃!
Stars: ✭ 339 (+4742.86%)
Mutual labels:  freemarker
Android Studio Material Template
A template for Android Studio to create applications with material design and Navigation Drawer.
Stars: ✭ 596 (+8414.29%)
Mutual labels:  freemarker
Fs Blog
个人博客,Spring Boot 开山之作,采用 Spring Boot + MyBatis,前端 Bootstrap + LayUI,支持程序员非常青睐的轻量化的 Markdown 编辑器 Editor.md,支持标签分类检索
Stars: ✭ 700 (+9900%)
Mutual labels:  freemarker
Recyclerviewtemplate
One Template which solves all frequently used RecyclerViews Code Snippets
Stars: ✭ 404 (+5671.43%)
Mutual labels:  freemarker
Flycms
FlyCms 是一个类似知乎以问答为基础的完全开源的JAVA语言开发的社交网络建站程序,基于 Spring Boot+Bootstrap3+MyBatis+MySql+Solr +Ehcache应用架构,专注于社区内容的整理、归类和检索,它集合了问答,digg,wiki 等多个程序的优点,帮助用户轻松搭建专业的知识库和在线问答社区。业务模块包括:权限管理,会员管理,角色管理,定时任务管理(调度管理),问答管理,文章管理,分享管理,短信接口管理和邮件系统发送(注册、找回密码、邮件订阅),跨域登录,消息推送,全文检索、前端国际化等等众多模块,等您自己来体验!
Stars: ✭ 472 (+6642.86%)
Mutual labels:  freemarker
Android Studio Mvp Template
Android MVP template for Android Studio
Stars: ✭ 636 (+8985.71%)
Mutual labels:  freemarker
Testpilot
Test Pilot is a platform for performing controlled tests of new product concepts in Firefox
Stars: ✭ 256 (+3557.14%)
Mutual labels:  freemarker
Vs Freemarker
FreeMarker language colorization extension for Visual Studio Code
Stars: ✭ 17 (+142.86%)
Mutual labels:  freemarker
Fluent Rs
Rust implementation of Project Fluent
Stars: ✭ 503 (+7085.71%)
Mutual labels:  freemarker
Mvparmstemplate
🛠️ A template for Android Studio to create MVPArms and MVPArt Page
Stars: ✭ 697 (+9857.14%)
Mutual labels:  freemarker
Blurts Server
Firefox Monitor arms you with tools to keep your personal information safe. Find out what hackers already know about you and learn how to stay a step ahead of them.
Stars: ✭ 403 (+5657.14%)
Mutual labels:  freemarker
Watchdog Framework
🍻 「停止维护」基于SpringBoot+Shiro+Mybatis等开发的轻量级管理系统快速开发脚手架
Stars: ✭ 421 (+5914.29%)
Mutual labels:  freemarker
Freemarker
Apache Freemarker
Stars: ✭ 643 (+9085.71%)
Mutual labels:  freemarker
Android Studio Template
a template of model activity|adapter for adnroid studio 。可自定义的activity |adapter模板。
Stars: ✭ 376 (+5271.43%)
Mutual labels:  freemarker
Springboot Learning
🚕 spring boot学习案例,方便spring boot 初学者快速掌握相关知识
Stars: ✭ 724 (+10242.86%)
Mutual labels:  freemarker
The Pit Of The Android Studio
👍 👍 👏 🌟 ⭐️ ⭐️ Everything about the Android Studio and Intellij IDEAfor example:Install,common problems and solutions,each libraries for android and androidx library,code and peoject templates,etc.全面总结Android Studio以及Intellij IDEA的填坑指南,详解AS版本号、Gradle版本、BuildTools三者的对照关系,AS模板配置,gradle插件,Android自带注解库详解,support详解等干货。
Stars: ✭ 296 (+4128.57%)
Mutual labels:  freemarker
Screenshots
Firefox Screenshots: the best way to take screenshots on the web.
Stars: ✭ 609 (+8600%)
Mutual labels:  freemarker
Loginandroidstudiotemplate
This template generates code snippets for Login with Presenter, View, Model and Activity classes. Following are the different styles of login fields that are generated from this template.
Stars: ✭ 18 (+157.14%)
Mutual labels:  freemarker
Springbootcodegenerator
又名大狼狗代码生成器,基于SpringBoot2+Freemarker的JAVA代码生成器,以释放双手为目的,支持mysql/oracle/pgsql三大数据库, 用DDL-SQL语句生成JPA/JdbcTemplate/Mybatis/MybatisPlus/BeetlSQL等相关代码.
Stars: ✭ 810 (+11471.43%)
Mutual labels:  freemarker
Coolmeeting
更多 Java 教程----->
Stars: ✭ 689 (+9742.86%)
Mutual labels:  freemarker

alfresco-datalist-constraints

Compatible with Alfresco CE 4.2.c, 4.2.f, 5.0.d, 5.1.g (aka 201605) & 5.2.g (aka 201707)

Lastest release available at 4.0.0

Using datalists to maintain Alfresco model constraints.

  1. Deploy repo and share AMPs to Alfresco
  2. Create a new site selecting Site Preset Dictionary
  3. Configure site dashboard to include Datalists
  4. Create two new datalists from type "Options", one called "Smartphones" and another called "OS"
  5. Populate the datalists with some values (01 - Android, 02 - iOS...)
  6. Create a new site
  7. Upload a new document
  8. Add "Sample" aspect to document
  9. On "Option lists" section you should see two new fields ("option" and "another option") with combos showing the data populated on step 5

alt tag

alt tag

Version 2.1.0

Only repo artifact is versioned as 2.1.0, available at datalist-model-repo.amp

Requires an additional property at alfresco-global.properties

datalist.show.ordered=true

If true values are showed ordered by value in combos, if false values are showed as they were introduced in combos.

Version 2.1.1

Both artifacts are versioned as 2.1.1

Support for multiple values control

<field id="ks:option">
    <control template="/org/alfresco/components/form/controls/datalistSelectone-multiple.ftl">
        <control-param name="itemType">Option</control-param>
    </control>                    
</field>

Based in Doña Ana County multivalue form control

Version 2.1.2

Both artifacts are versioned as 2.1.2

Fixed deployment of web resources in the file-mapping.properties

Version 3.0.0

AMP artifacts ready-to-deploy available at 3.1.0

It can be defined the same DataList ID to be applied locally inside a Site, overriding global Dictionary datalist values. When using for advanced search, new search parameter has been added for FTL control in order to mix all values from local sites and Dictionary sites.

** Sample scenario **

Datalist definitions

Dictionary Site > Datalist "Options" > Values = 1,2
Sample 1 Site   > Datalist "Options" > Values = 3,4
Sample 2 Site   > No datalist defined

Values provided by combos

Outside from a Site  > Values = 1,2
From Advanced Search > Values = 1,2,3,4
From Sample 1 Site   > Values = 3,4
From Sample 2 Site   > Values = 1,2

Sample custom model and Share form definition are being provided at folder datalist-sample

Version 3.1.0

Added controls for default value and parent selection

Version 3.2.0

AMP artifacts ready-to-deploy available at 3.2.0

Keywords [ADD] and [REPLACE] have been added to define the behaviour of a list inside a Site:

  • [ADD] merges values from global Dictionary list and Site list
  • [REPLACE] includes only values from Site list

This keyword has to be included in any place at Description field when declaring the list inside a Site.

** Sample scenario **

Datalist definitions

Dictionary Site > Datalist "Options" > Values = 1,2
Sample 1 Site   > Datalist "Options" (including [ADD] in description) > Values = 3,4
Sample 2 Site   > Datalist "Options" (including [REPLACE] in description) > Values = 3,4
Sample 3 Site   > No datalist defined

Values provided by combos

Outside from a Site  > Values = 1,2
From Advanced Search > Values = 1,2,3,4
From Sample 1 Site   > Values = 1,2,3,4
From Sample 2 Site   > Values = 3,4
From Sample 3 Site   > Values = 1,2

Sample script to create lists and values from command line

#!/bin/sh

# Alfresco server hostname
hostname=localhost
# Basic auth, admin/admin by default
authorization="Authorization: Basic YWRtaW46YWRtaW4="

# Lists names
lists=("lista1" "lista2" "lista3")

# Values by list name
lista1=("code1a,value1a" "code1b,value1b")
lista2=("code2a,value2a" "code2b,value2b")
lista3=("code3,value3")

for listName in "${lists[@]}"; do

	listNodeRef=$(curl --silent -X POST \
	  http://"${hostname}"/alfresco/s/api/type/dl%3AdataList/formprocessor \
	  -H "${authorization}" \
	  -H 'content-type: multipart/form-data;' \
	  -F alf_destination=workspace://SpacesStore/582ca69b-4a38-42ac-bb7b-d215929a2e17 \
	  -F prop_cm_title=$listName \
	  -F prop_dl_dataListItemType=dlm:optionList \
	  | grep "persistedObject" | cut -c"25-" | rev | cut -c"3-" | rev)

	echo "Created list $listName ($listNodeRef)"

	values="${listName}[@]"
	for value in "${!values}"; do

		code=$(echo "${value}" | cut -d "," -f 1)
		value=$(echo "${value}" | cut -d "," -f 2)

		itemNodeRef=$(curl --silent -X POST \
		  http://"${hostname}"/alfresco/s/api/type/dlm%3AoptionList/formprocessor \
	      -H "${authorization}" \
		  -H 'content-type: multipart/form-data;' \
		  -F alf_destination=$listNodeRef \
		  -F 'prop_dlm_code='"${code}"'' \
		  -F 'prop_dlm_value='"${value}"'' \
		  | grep "persistedObject" | cut -c"25-" | rev | cut -c"3-" | rev)
		  
	done

done
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].