added empty files and fixed a little
This commit is contained in:
parent
d6d77072d9
commit
3d0d609462
43 changed files with 944 additions and 373 deletions
|
|
@ -3,4 +3,276 @@ VASC Features
|
|||
* Mulple Type of Frontend rendering supported
|
||||
|
||||
* Different Type of Backend data is supported
|
||||
|
||||
|
||||
OLD README:
|
||||
|
||||
+--
|
||||
|
||||
|
||||
eclipse 3.2
|
||||
|
||||
To build/run the swt stuff you need the Visual Editor plug in installed from the calisto site.
|
||||
|
||||
eclipse 3.3
|
||||
|
||||
Down load http://www.ehecht.com/eclipse_ve/ve.html (lin_mac version)
|
||||
|
||||
Unzip and move the plug ins and features into the plug in and features directory of eclipse.
|
||||
|
||||
Swing will run by default.
|
||||
|
||||
-- XyReasscan ?
|
||||
|
||||
zie tables statline.cbs.nl voor bs asielverzoeken nl
|
||||
|
||||
|
||||
---- Object tree:
|
||||
|
||||
3 layers
|
||||
|
||||
- Data Backend
|
||||
- JPA or Hibernate
|
||||
- Meta Query
|
||||
- LDAP
|
||||
# List via geparametered xql query
|
||||
# Save
|
||||
# Merge
|
||||
# Delete
|
||||
# Create ?
|
||||
FilteringDataSource
|
||||
PagingDataSource
|
||||
FilteringPagingDataSource
|
||||
Ordering
|
||||
Parameter
|
||||
|
||||
- Data Source Controller
|
||||
- Data Access Controller
|
||||
# User ACL on data items/columns
|
||||
# Create new entry hooks
|
||||
|
||||
- Table Controller
|
||||
- User Settings
|
||||
|
||||
|
||||
- Data Frontends
|
||||
- Extjs
|
||||
- Swing
|
||||
- WS
|
||||
- SWT via SwingWT
|
||||
- JSF (met utr plugin)
|
||||
|
||||
|
||||
|
||||
- default view field
|
||||
- Admin fields and order
|
||||
- Admin field groups -> 'collapse
|
||||
- List filters auto by type
|
||||
- search fields
|
||||
|
||||
verbose_name_plural
|
||||
The plural name for the object:
|
||||
verbose_name_plural = "stories"
|
||||
If this isn’t given, Django will use verbose_name + "s"
|
||||
|
||||
List of Magic Field Names
|
||||
|
||||
* created_at
|
||||
* created_on
|
||||
* updated_at
|
||||
* updated_on
|
||||
* lock_version
|
||||
* type
|
||||
* id
|
||||
* #{table_name}_count
|
||||
* position
|
||||
* parent_id
|
||||
* lft
|
||||
* rgt
|
||||
* quote_value (is used for quoting)
|
||||
* template
|
||||
|
||||
|
||||
|
||||
- plural
|
||||
- ordering
|
||||
- order_with_respect_to
|
||||
|
||||
# admin
|
||||
- date_hierarchy
|
||||
- fields = (
|
||||
(None, {
|
||||
'fields': ('url', 'title', 'content', 'sites')
|
||||
}),
|
||||
('Advanced options', {
|
||||
'classes': 'collapse',
|
||||
'fields' : ('enable_comments', 'registration_required', 'template_name')
|
||||
'description' : 'sdf'
|
||||
}),
|
||||
)
|
||||
- JS
|
||||
- list_display_links
|
||||
- list_filter = BooleanField, DateField, DateTimeField or ForeignKey.
|
||||
- list_per_page
|
||||
- ordering def
|
||||
- save_as
|
||||
- search_fields
|
||||
|
||||
@Entity
|
||||
@VascAdmin(list=true,edit=true,create=true,delete=false)
|
||||
public class BlogPost {
|
||||
|
||||
@VascPrimaryKey
|
||||
@VascName(key="generic.id.name")
|
||||
@VascDescription(key="generic.id.name")
|
||||
@VascHelpId(key="generic.id.help")
|
||||
@VascImage(key="generid.id.image");
|
||||
Integer id;
|
||||
|
||||
@Column(columnName="title")
|
||||
@VascDisplayName
|
||||
@VascUserRoles(list="(floormanager&sitemanager)|admin" editViewOnly="floormanager" edit="sitemanager|admin")
|
||||
String title;
|
||||
|
||||
@VascEditorType(type="slugField")
|
||||
String slug;
|
||||
|
||||
@VascChoices()
|
||||
@VascDefaultValue(key="")
|
||||
String tags;
|
||||
|
||||
@VascRegex(regex="<(.*)>" key="generic.regex.html.tagsNotAllowed")
|
||||
String content;
|
||||
|
||||
@VascEditorType(type="floatField" hints="max_digits=3,decimal_places=2")
|
||||
@VascFieldOptions
|
||||
@VascColumnWidth(width=130)
|
||||
Float price;
|
||||
|
||||
@VascModelReference
|
||||
@VascDefaultValue
|
||||
@VascObjectNotNull
|
||||
BlogStatus blogStatus;
|
||||
|
||||
@VascEditorType(type="dateField" hints="auto_now=true,auto_now_add=true")
|
||||
@VascDefaultValue(key="new_date")
|
||||
@VascUserRoles(list="admin")
|
||||
Date createdDate
|
||||
|
||||
@VascEventChannel(channel="BlogPost.modifiedDate" create=true)
|
||||
Date modifiedDate
|
||||
|
||||
@VascDateFuture
|
||||
Date publicedDate
|
||||
}
|
||||
|
||||
|
||||
|
||||
<servlet>
|
||||
<name>vasc</name>
|
||||
<class></class>
|
||||
<property>admin=true</property>
|
||||
<property>backend=extjs</property>
|
||||
<property>path=/js/extjs/*</property>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<name>vasc</name>
|
||||
<mapping>/vasc/*</mapping>
|
||||
</servlet-mapping>
|
||||
|
||||
|
||||
EmployeeDataSource dataSource = new EmployeeDataSource();
|
||||
dataSource.setJdbcTemplate(new JdbcTemplate(employeeDataSource()));
|
||||
FilteringPaginator filteringPaginator = new FilteringPaginator(dataSource, EmployeeReportObject.class);
|
||||
JsfCrudAdapter adapter = new JsfCrudAdapter(filteringPaginator, (CrudController)empCrud().getController()){
|
||||
public Serializable getEntity() {
|
||||
Object object = ((Row)getModel().getRowData()).getObject();
|
||||
EmployeeReportObject employeeReportObject = (EmployeeReportObject) object;
|
||||
Employee employee = new Employee();
|
||||
employee.setId(employeeReportObject.getId());
|
||||
return employee;
|
||||
}
|
||||
};
|
||||
|
||||
return adapter;
|
||||
|
||||
EVt;
|
||||
|
||||
<a4j:form id="blogForm" enctype="multipart/form-data">
|
||||
<vasc:form crud="${crud}" parentForm="blogForm"
|
||||
propertyNames="firstName,lastName,department,description,file,age,numberOfPromotions,active,status,dob">
|
||||
|
||||
<vasc:compositePanel entity="${crud.entity.address}" name="address"
|
||||
propertyNames="line_1,line2,zipCode" />
|
||||
|
||||
<vasc:detailListing
|
||||
detailController="${directReportDetailController}"
|
||||
propertyNames="firstName,lastName,description,age,numberOfPromotions" />
|
||||
|
||||
<vasc:detailListing detailController="${taskDetailController}"
|
||||
propertyNames="name,startDate,endDate,complete" />
|
||||
|
||||
<vasc:detailListing detailController="${contactDetailController}"
|
||||
propertyNames="name,phone" />
|
||||
|
||||
<vasc:selectMany jsfSelectManyController="${employeeToRoleController}"
|
||||
propertyNames="name"
|
||||
parentForm="employeeForm"/>
|
||||
|
||||
</vasc:form>
|
||||
</a4j:form>
|
||||
|
||||
|
||||
|
||||
@SuppressWarnings({ "unchecked", "serial" })
|
||||
@Bean(scope = DefaultScopes.SESSION)
|
||||
public JsfCrudAdapter empRecordCrud() {
|
||||
EmployeeDataSource dataSource = new EmployeeDataSource();
|
||||
dataSource.setJdbcTemplate(new JdbcTemplate(employeeDataSource()));
|
||||
FilteringPaginator filteringPaginator = new FilteringPaginator(dataSource, EmployeeReportObject.class);
|
||||
JsfCrudAdapter adapter = new JsfCrudAdapter(filteringPaginator, (CrudController)empCrud().getController()){
|
||||
public Serializable getEntity() {
|
||||
Object object = ((Row)getModel().getRowData()).getObject();
|
||||
EmployeeReportObject employeeReportObject = (EmployeeReportObject) object;
|
||||
Employee employee = new Employee();
|
||||
employee.setId(employeeReportObject.getId());
|
||||
return employee;
|
||||
}
|
||||
};
|
||||
|
||||
return adapter;
|
||||
}
|
||||
|
||||
<a4j:form id="employeeListingForm">
|
||||
<a4j:outputPanel ajaxRendered="true">
|
||||
<h:panelGroup rendered="${empRecordCrud.controller.showForm}">
|
||||
<crank:form
|
||||
crud="${empRecordCrud.controller}"
|
||||
parentForm="employeeListingForm"
|
||||
propertyNames="firstName,lastName,numberOfPromotions,age,department" ajax="${true}" />
|
||||
</h:panelGroup>
|
||||
</a4j:outputPanel>
|
||||
|
||||
<crank:listing
|
||||
jsfCrudAdapter="${empRecordCrud}"
|
||||
propertyNames="firstName,lastName"
|
||||
parentForm="employeeListingForm"
|
||||
/>
|
||||
</a4j:form>
|
||||
|
||||
|
||||
|
||||
<h:form id="expListForm" rendered="#{controllerBean.showListing}">
|
||||
<crank:listing paginator="${paginators['Employee']}"
|
||||
jsfCrudAdapter="${cruds['Employee']}"
|
||||
propertyNames="firstName,lastName,active,dob,age,phone,email,department.name,description"
|
||||
pageTitle="Employees"
|
||||
parentForm="expListForm"
|
||||
reRender="${reRender}"
|
||||
crud="${cruds['Employee'].controller}"/>
|
||||
</h:form>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+--
|
||||
35
src/site/apt/todo.apt
Normal file
35
src/site/apt/todo.apt
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
TODO LIST
|
||||
|
||||
+--
|
||||
|
||||
|
||||
- (30%) X4O client/server config
|
||||
- fix frontend event system
|
||||
- make event channels work
|
||||
- config prefix (and rest of default in finalizer)
|
||||
- (10%) update SWT frontend
|
||||
- create JSF frontend
|
||||
- Make annotations work.
|
||||
- Multiple SelectItems for addable null's etc.
|
||||
- make sorting work
|
||||
- make searching work
|
||||
- made options work
|
||||
- auto text converts
|
||||
|
||||
- Plugin validation
|
||||
- Plugin Role Parser
|
||||
- Finalizer plugins
|
||||
- Check user roles in frontend
|
||||
- Default/Full Table and templating
|
||||
- Ckeck all validators
|
||||
- Bind to x18n
|
||||
- MetaQuery support
|
||||
- create JSF-extJS frontend
|
||||
- create XML-RPC frontend
|
||||
- export interface + exports
|
||||
- graphs of numeric value columns
|
||||
|
||||
=== DONE ===
|
||||
|
||||
|
||||
+--
|
||||
Loading…
Add table
Add a link
Reference in a new issue