]> git.mxchange.org Git - jfinancials-war.git/log
jfinancials-war.git
6 years agoPlease cherry-pick:
Roland Häder [Sat, 7 Jul 2018 16:24:43 +0000 (18:24 +0200)]
Please cherry-pick:
- restructed admin menu towards a sidebar and slide menu which is
  finger-friendlier and consumes lesser space
- also this lefts open a top panel for later enhancements
- renamed base.tpl -> master.tpl
- rewrote "mini links" (with custom CSS) to PrimeFaces' p:menuButton and
  p:menuitem, also moved them to proper "dropdown" folder

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Wed, 27 Jun 2018 21:27:20 +0000 (23:27 +0200)]
Product-only:
- added missing context parameter product_barcode_type to EAN-13 bar-codes

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Tue, 26 Jun 2018 19:57:44 +0000 (21:57 +0200)]
Don't cherry-pick:
- one i18n string for bar-code numbers is okay, removed for receipt

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Tue, 26 Jun 2018 19:46:41 +0000 (21:46 +0200)]
Product-only:
- added form field for product's bar-code number
- added graphical bar-code of product's bar-code number to dialog box
- added missing i18n language strings

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Mon, 25 Jun 2018 21:10:01 +0000 (23:10 +0200)]
Please cherry-pick:
- exposed branch office and employee number in list views
- added missing i18n string

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Mon, 25 Jun 2018 19:56:55 +0000 (21:56 +0200)]
Please cherry-pick:
- invoke renderEmployee() to have nice link text

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Sun, 24 Jun 2018 21:48:40 +0000 (23:48 +0200)]
Product-only:
- if no product number is assigned, don't leave the box empty and show a proper message

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Sun, 24 Jun 2018 20:41:20 +0000 (22:41 +0200)]
Don't cherry-pick:
- let's render the receipt's bar code into an actual barcode
- renamed RECEIPT_NUMBER -> RECEIPT_NUMBER_HEADER
- added showing receipt number in list view (receipts)

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Sun, 24 Jun 2018 16:00:51 +0000 (18:00 +0200)]
Product-only:
- shown product number in list view to have it filterable
- removed no longer used namespace

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Sun, 24 Jun 2018 12:55:41 +0000 (14:55 +0200)]
Don't cherry-pick:
- need to invoke renderUser() instead, strange is that my IDE didn't show this
  error but okay.
- added register number to dialog box
- added missing i18n strings

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Fri, 22 Jun 2018 21:33:27 +0000 (23:33 +0200)]
Please cherry-pick:
- was old-lost content from my PHP project "mailer"

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Sat, 16 Jun 2018 13:15:03 +0000 (15:15 +0200)]
Don't cherry-pick:
- added transaction number as some receipts contain it

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Fri, 18 May 2018 21:36:09 +0000 (23:36 +0200)]
Please cherry-pick:
- no need for this double-slash here

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Mon, 14 May 2018 23:15:36 +0000 (01:15 +0200)]
Product-only:
- added missing navigation rule

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Mon, 14 May 2018 23:15:19 +0000 (01:15 +0200)]
Please cherry-pick:
- added missing navigation rules

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Mon, 14 May 2018 23:03:34 +0000 (01:03 +0200)]
Don't cherry-pick:
- added helper bean for fiancial beans, renderReceipt() was moved here
- need to have > of <ui:composition> in own line to avoid editing 2 lines when
  adding an another XML namespace
- wrapped all (?) long JSF/PF tags to have their attributes in separates lines
- using no longer tableStyleClass attribute
- continued with single receipt item p:dialog (all fields exposed there)
- position of it set to "top"
- oh, no more columnClasses="label,value" ... ;-)
- also no more styleClass="submit|reset" (themed)
- added process="@form" as a workaround for an exception (BalusC said this)

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Mon, 14 May 2018 23:00:12 +0000 (01:00 +0200)]
Product-only:
- having this AJAX-pagination-filtering-sorting stuff here is plain wrong, but
  hey ... what is @ViewScoped again ??? ;-)
- added productId backing bean as the edit/delete view require it
- also createProductInstance() is setting it, when not null

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Mon, 14 May 2018 22:49:05 +0000 (00:49 +0200)]
Product-only:
- moved > of <ui:composition> to new line to have newly added namspaces being
  added without causing 2 lines being changed
- wrapped long JSF/PF tags having each attribute in a single line
- added size, maxValue and minValue to productUnitAmount
- onPostback has caused some side effect that values got overwritten in e.g.
  edit views
- no longer using tableStyleClass
- changed i18n strings, no need for having PRODUCT_ prefix on e.g. net/gross
  price strings
- no longer using styleClass="submit|reset"
- added process="@form" as a workaround for an exception, according to BalusC
  this is not fixing the actual application's misconfiguration (where which?)

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Mon, 14 May 2018 21:40:10 +0000 (23:40 +0200)]
Please cherry-pick:
- introduced list view-scoped backing bean for branch offices, including
  interface, which will hold the list for pagination and filtering/sorting as
  @RequestScoped annotated beans will be reset even on each AJAX requests
- according to the change from "general" (request-scoped) to "list"
  (view-scoped) backing bean, also renamed class fields in converters/validators
- private methods should not throw exceptions as they cannot be tested with
  unit tests
- added new bean helper method renderCountry()
- also include department name in renderEmployee(), if applyable
- moved all receipt/product-related renderFoo() methods away to their own beans
  resulting in lesser conflicts on cherry-picking to other projects
- rewrote bean helper methods "renderFoo()" a bit
- added Accept: text/xml in case of AJAX requests (BalusC, thank you again)
- added validator for branch office's email address
- fixed relative path in project.properties (ops, NetBean's fault?)
- added template for opening times data
- fixed end of all ui:composition tags: > must be in new line to allow easy
  adding (only a line added, not 2 existing modified) of new "imports"
- rewrote admin_basic_data_list.xtml to new way, with global search and details
  p:dialog being dynamically loaded (cool PF!)
- same rewrite for admin_branch_office_list.xtml (still other views like
  edit/delete/assign will be missing)
- remove for="someId" where really not needed (<f:convertDateTime> was already
  within the tag where for="x" was pointing to)
- removed not needed "imports" of XML namespaces
- changed admin_contact_data_min.tpl to p:column (was h:column)
- onPostback had some side effects like overwriting values, still some edit
  views may not work as expected (changer to PrimeFaces)
- added required <h:inputHidden> for primary key handled over from URL
  (edit/delete/assign views again)
- <div class="table-footer"> is discouraged as this is plain HTML and no
  engine-controlled JSF tag
- reformatted over-long JSF/PF tags to have each attribute in its own line
- form-admin-edit-user was incorrect (copy-paste) in a contact view, fixed
- removed no longer used tableStyleClass attribute
- *Created.time handled over to <f:convertDateTime> is maybe wrong, just
  *Created is really okay here
- removed styleClass="submit|reset"
- added process="@form" but this is only a workaround according to BalusC on
  stackoverflow.com (thank you for all your value contributions!!!)
- admin_[show_]<fax|landline|mobile|user>_data.tpl were all still using
  h:column, now fixed to p:column
- moved comment block out of ui:composition, else it will show up in HTML code
  and may even confuse the JSF engine?
- removed some CSS attributes from discouraged custom.css as there is now a
  theme around, include .table* classes
- added a lot more i18n strings

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Fri, 6 Apr 2018 21:35:58 +0000 (23:35 +0200)]
Don't cherry-pick:
- added list and user bean for receipt items, need to have this for having
  "working" (at least partly) paginator+filter+sorting on a p:dataTable tag
- also prepared listing of receipt items for clicking on a row to have a
  p:dialog shown up with all details, yet still unfinished
- removed no longer used i18n key

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Fri, 6 Apr 2018 21:32:15 +0000 (23:32 +0200)]
Product-only:
- created product helper bean and moved all product-related methods from generic
  to this bean
- added view stubs for edit, delete and show of a generic product
- fixed imports as "add events" now have own package

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Fri, 6 Apr 2018 21:22:45 +0000 (23:22 +0200)]
Please cherry-pick:
- the helper bean needs to be view-scoped for other "list" view-scoped beans
- all action methods must return void to have JSF AJAX requests working properly
- sorted some members

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Sat, 31 Mar 2018 14:38:55 +0000 (16:38 +0200)]
Product-only:
- removed <f:selectItem> with value="#{null}" in filter selection box, was
  anoying there and no use anyway

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Sat, 31 Mar 2018 14:36:43 +0000 (16:36 +0200)]
Don't cherry-pick:
- added view-scoped backing bean for receipt lists which helps pagination +
  filter + sorting
- it is now the new receiptListController and no allReceipts() (method) but only
  allReceipts (bean property)
- addded missing i18n strings, removed no longer used

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Sat, 31 Mar 2018 14:32:49 +0000 (16:32 +0200)]
Please cherry-pick:
- removed <f:selectItem> with value="#{null}" in filter selection box, was
  anoying there and no use anyway
- added beanHelper.renderUser(user) which is a helper method for rendering
  user names
- added missing i18n strings

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Sat, 31 Mar 2018 03:58:09 +0000 (05:58 +0200)]
Product-only:
- added dialog (modal) for details about a single category
- updated header for same list
- added missing i18n keys

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Sat, 31 Mar 2018 01:09:07 +0000 (03:09 +0200)]
Please cherry-pick:
- added missing i18n string

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Sat, 31 Mar 2018 00:24:10 +0000 (02:24 +0200)]
Product-only:
- if for example an employee is assigned to a company (basic_data) then always
  link the "show basic data" view and not the company's website URL
- fixed wrong bundle, have to be "project", "msg" is generic
- added missing i18n strings

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Sat, 31 Mar 2018 00:23:51 +0000 (02:23 +0200)]
Don't cherry-pick:
- if for example an employee is assigned to a company (basic_data) then always
  link the "show basic data" view and not the company's website URL

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Sat, 31 Mar 2018 00:11:14 +0000 (02:11 +0200)]
Please cherry-pick:
- if for example an employee is assigned to a company (basic_data) then always
  link the "show basic data" view and not the company's website URL

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Fri, 30 Mar 2018 22:57:34 +0000 (00:57 +0200)]
Product-only:
- <f:*> are not processed when the view is rendered but when "constructed"
- therefore EL expressions cannot reference only "static" data, not data that
  will be dynamically provided

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Fri, 30 Mar 2018 22:14:28 +0000 (00:14 +0200)]
Don't cherry-pick:
- _HEADER is now everwhere a suffix, not 2nd prefix of i18n keys

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Fri, 30 Mar 2018 22:12:45 +0000 (00:12 +0200)]
Product-only:
- in product list, allow clicking ("selecting") a row (single product) and
  show a dialog (modal) box with all detailed data
- _HEADER is now everwhere a suffix, not 2nd prefix of i18n keys

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Fri, 30 Mar 2018 22:09:23 +0000 (00:09 +0200)]
Please cherry-pick:
- _HEADER is now everwhere a suffix, not 2nd prefix of i18n keys
- *_BASIC_COMPANY_DATA_* was nice to read, still the POJI is named BasicData
  where this i18n key belongs to, so let's remove the _COMPANY from all strings
- ID_NUMBER_HEADER is generic and okay for "Id number:" string

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Fri, 30 Mar 2018 17:47:42 +0000 (19:47 +0200)]
Don't cherry-pick:
- on a p:dataTable it is recommneded (to avoid JavaScript errors) to have both
  id and widgetVar named the same

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Fri, 30 Mar 2018 17:42:20 +0000 (19:42 +0200)]
Please cherry-pick:
- on a p:dataTable it is recommneded (to avoid JavaScript errors) to have both
  id and widgetVar named the same
- changed general font size to 0.8em

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Fri, 30 Mar 2018 17:36:50 +0000 (19:36 +0200)]
Please cherry-pick:
- data output by a p:dataTable with pagination, filtering and sorting cannot
  come from a request-scoped bean as each AJAX request will reset the
  filteredValue-referenced bean property to null which leads to an empty table.
- better is to have a separate backing bean on view-scoped which holds both
  lists, the full ("all") list and filtered list (which are the items that have
  passed the filter).
- also had to update converters and validators
- finally, no need for javax.faces.STATE_SAVING_METHOD=client anymore! yeah!
- rewrote menu system (admin at least, guest and user login is following) to a
  menu-bar-based system which saves a lot space and is a more modern approach
- added filter for not caching xhtml (JSF view) requests

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Fri, 30 Mar 2018 17:07:48 +0000 (19:07 +0200)]
Product-only:
- data output by a p:dataTable with pagination, filtering and sorting cannot
  come from a request-scoped bean as each AJAX request will reset the
  filteredValue-referenced bean property to null which leads to an empty table.
- better is to have a separate backing bean on view-scoped which holds both
  lists, the full ("all") list and filtered list (which are the items that have
  passed the filter).
- also had to update converters and validators

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Tue, 27 Mar 2018 21:41:51 +0000 (23:41 +0200)]
Product-only:
- "in" was not fitting for a boolean value, better take "equals" and a
  p:selectOneMenu tag to have a compact way of selecting available or not
  available products

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Tue, 27 Mar 2018 21:41:12 +0000 (23:41 +0200)]
Please cherry-pick:
- added CHOICE_ALL

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Tue, 27 Mar 2018 21:31:08 +0000 (23:31 +0200)]
Product-only:
- ops, wrong property taken ...
- also filter productAvailability with "in" mode

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Tue, 27 Mar 2018 21:29:51 +0000 (23:29 +0200)]
Please cherry-pick:
- fixed API documentation URL to "offical"

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Sun, 25 Mar 2018 16:04:15 +0000 (18:04 +0200)]
Don't cherry-pick:
- fixed German/English translation mixture
- sorted i18n strings
- added missing i18n string LABEL_RECEIPT_SELLERS
- this string is in project bundle, not msg (generic)

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease repeat:
Roland Häder [Sun, 25 Mar 2018 15:48:45 +0000 (17:48 +0200)]
Please repeat:
- updated Apache POI to 3.17

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Sun, 25 Mar 2018 02:15:23 +0000 (04:15 +0200)]
Please cherry-pick:
- renamed admin_form_mobile_data.tpl to admin_edit_form_mobile_data.tpl as this
  tag is for editing mobile numbers
- started cleanup by removing no longer valid (PF + jquery-ui have own stuff)
  <div> tags
- reformatted more p:inputText
- size="10" for <landLine|fax|mobile>Number is a bit to short, let's take 20
  again
- size="20" for email addresses is a bit to short, let's take 40 then
- replace more h:outputLink with p:link, need to take href attribute with this
  tag then
- renamed *_LANDLINE_* i18n keys to *_LAND_LINE_*
- used p:outputPanel instead of plain <div> tag, may now lesser break
- no size of landline/fax number (not area-code)

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Sun, 25 Mar 2018 01:26:40 +0000 (03:26 +0200)]
Please cherry-pick:
- ops, didn't rename getter/setter for employeeBasicData

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Sun, 25 Mar 2018 01:22:02 +0000 (03:22 +0200)]
Product-only:
- no size="x" for i18n keys (except for product's unit key)

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon't cherry-pick:
Roland Häder [Sun, 25 Mar 2018 01:20:49 +0000 (03:20 +0200)]
Don't cherry-pick:
- reformatted p:inputText tags (and please others, too) to have each attribute
  in a separate line for later easier updates
- size="10" was to small again, let's take again 20

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Sun, 25 Mar 2018 01:17:12 +0000 (03:17 +0200)]
Please cherry-pick:
- added requiredMessage to countryI18nKey (resurrected?)
- no size="x" for such keys, including for department

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Sat, 24 Mar 2018 22:40:54 +0000 (23:40 +0100)]
Product-only:
- size=10 is to short, let's take 20 here

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease repeat:
Roland Häder [Sat, 24 Mar 2018 22:18:46 +0000 (23:18 +0100)]
Please repeat:
- updated PrimeFaces to 6.2

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Sat, 24 Mar 2018 22:16:11 +0000 (23:16 +0100)]
Please cherry-pick:
- used on validator:emailAddressValidator as this allows empty values being
  ignored
- p:growl's autoUpdate and any other is deprecated, better use p:autoUpdate
  instead (new PrimeFaces 6.2 deprecation fixed)
- used $() instead of `` for monitoring script

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoDon' cherry-pick:
Roland Häder [Sat, 24 Mar 2018 22:05:59 +0000 (23:05 +0100)]
Don' cherry-pick:
- added more i18n strings (non-generic)
- receiptNumber may not be all-numbers, so changed type to java.lang.String
- removed p:message as this is no need for (anymore)
- incomeSingleAmount is now java.math.BigDecimal as this is more precise than
  java.lang.Float is
- having getter/setter for backing bean properties in interface may ask other
  developers to invoke them from other beans, this is bad as it may cause
  problems when code grows
- so the interface FinancialsIncomeWebRequestController is now cleared and all
  documentation is moved to backing bean class
- added itemNumber to same backing bean
- ADMIN_LINK_SHOW_RECEIPT_TITLE is a project-specific i18n key, not generic (msg)
- so ADMIN_LINK_SHOW_RECEIPT_ITEM_PRODUCT_TITLE is ...
- added missing navigation rules from admin_receipt_list
- fixed name for getter of filteredReceiptItems property
- renamed companyEmployee -> employee in JSF views/templates
- let's use beanHelper.renderBranchOffice() instead of outputting only plain id
  number
- added TODOs of unfinished/hard-coded stuff
- updated/changed copyright to Free Software Foundation

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Sat, 24 Mar 2018 22:01:10 +0000 (23:01 +0100)]
Product-only:
- removed size from input tag

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Sat, 24 Mar 2018 21:58:23 +0000 (22:58 +0100)]
Please cherry-pick:
- added more i18n strings
- used own validator:emailAddressValidator as this allows empty values to be
  ignored

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Sat, 24 Mar 2018 18:24:16 +0000 (19:24 +0100)]
Please cherry-pick:
- f:validator is no longer working, need to use own JSF tag
  validator:employeeEmailAddressValidator which allows a second parameter
- there is no type="secret", need to be type="password"
- added p:inputTex for headquarter's company name
- added selection box for profile-mode using "new" getter in data controller
- added selection box for branch office owner (employee)
- added navigation rule from employee list to to assign branch office to
  employee
- fixed leftovers from duplication from branch office to employee/department
- added navigator="true"
- renamed employeeCompany to employeeBasicData
- reformatted p:inputText in admin_form_contact_data.tpl
- allow null profile mode (?)
- set org.jboss.weld.development=false
- registered validators.jsf.taglib.xml
- updated/changed copyright to Free Software Foundation

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoProduct-only:
Roland Häder [Sat, 24 Mar 2018 18:22:35 +0000 (19:22 +0100)]
Product-only:
- also output project's number, age-group and size
- added getter for all age groups to "static" data bean

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Sat, 24 Mar 2018 16:09:34 +0000 (17:09 +0100)]
Please cherry-pick:
- isEmailAddressRegistered() should always, like other public methods, validate
  their parameter
- introduced isCompanyNameUsed() which is similar to isEmailAddressRegistered()
  which will be used to check in JS107 cache if company name is already used
- make sure only non-null email addresses are added to emailAddressCache
- updated/changed copyright to Free Software Foundation
- added TODO to get rid of generateRandomUserName() business method is which
  deprecated anyway
- removed isPublicUserProfileEnabled()
- AdminBranchOfficeWebRequestBean is surely a request-scoped backing bean
- added to same bean properties for last house number and extension of branch
  office
- renamed bean field employeePersonalContact -> employeePersonalData
- fixed some leftovers from duplication of branch office controller for employees
- same with department bean
- used more MessageFormat.format() which prevents more String objects polluting
  both heaps
- injected feature backing bean into admin user bean
- added missing bean property for user's profile mode to same bean
- introduced private method createUserInstance() to same bean
- null-ed more fields in same bean in clear() method
- fixed imports of ContactUtils -> Contacts
- AdminHeadquarterWebRequestBean is surely a request-scoped backing bean
- added to same bean properties for last house number and extension of
  headquarter
- fixed some leftovers from duplication of branch office controller for headquarter

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Tue, 20 Mar 2018 23:49:37 +0000 (00:49 +0100)]
Please cherry-pick:
- added ServletContextListener implementation for (later) pre-initialize JS107
  cache before any page is served
- added validators for basic company data, headquarter data and branch office's
  email addresses
- rewrote converters which have allowEmptyValue flag to handle it correctly
  (need that validators.jsf.taglib.xml for this to work)
- renamed company name validator as this is for basic company data ... ;-)
- updated/changed copyright year to Free Software Foundation

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoOnly product:
Roland Häder [Tue, 20 Mar 2018 23:34:47 +0000 (00:34 +0100)]
Only product:
- web controller expanded with age group ("new" enumeration), product size and number
- also changed Float to BigDecimal for precision reasons
- always filter/sort agains entity, not an entity's property
- used more MessageFormat.format()
- added converter for agegroup enumeration
- changed/updated copyright year to Freesoftware Foundation

Signed-off-by: Roland Häder <roland@mxchange.org>
6 years agoPlease cherry-pick:
Roland Häder [Tue, 20 Mar 2018 23:19:39 +0000 (00:19 +0100)]
Please cherry-pick:
- removed no longer required profile-mode backing bean
- removed admin_form_user_personal_data.tpl as there is no need for it
- added validators.jsf.taglib.xml which holds descriptions for JSF validators ...
- always sort/filter by direct entity
- fixed i18n keys, was missing an underscore

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Mon, 13 Nov 2017 00:29:37 +0000 (01:29 +0100)]
Don't cherry-pick:
- added new dependencies jcustomer-core+lib

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Sun, 5 Nov 2017 11:39:46 +0000 (12:39 +0100)]
Don't cherry-pick:
- renamed receipts -> receipt receipt_items -> receipt_item
- formatted issue date and shown correctly payment type
- added/fixed i18n strings, sometimes wrong bundle
- fixed navigation outcomes, was a copy-paste mistake
- added missing navigation rules

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe cherry-pick:
Roland Häder [Sat, 4 Nov 2017 13:25:47 +0000 (14:25 +0100)]
Maybe cherry-pick:
- renamed productUnitType -> productUnitI18nKey
- product's currency code, unit amount and unit's i18n key are now all required
  (non-nullable) fields
- therefor they have been moved into constructor invocation and not "externally"
  being set
- fixed message bundle, PRODUCT_FOO is alway "project" not "msg" (generic)
- fixed/added missing i18n strings
- tpzo fixed: PROJECT -> PRODUCT (ops)

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Sat, 4 Nov 2017 11:36:18 +0000 (12:36 +0100)]
Don't cherry-pick:
- receipts may also bear time when purchased, let's record this as well and
  java.util.Date can easily persist both, date and time, anyway.
- item's manufacturer can be different to generic product manufacturer, e.g.
  a sound system is unlikely being rebranded but surely many different companies
  will produce milk (which is a generic product that needs branding)
- bar codes are sometimes extremely long, even java.lang.Long was not enough to
  store them and I may not go to BigInteger, but maybe one day I will ...
- code convention applied: in comparison, first value then variable
- added brand name for receipt item

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe cherry-pick:
Roland Häder [Sat, 4 Nov 2017 00:16:54 +0000 (01:16 +0100)]
Maybe cherry-pick:
- renamed product -> generic_product
- renamed category -> product_category
- added validators for both product/category i18n keys as direct titles are not
  localizable
- added product manufacturer with is a connection to basic_data entity
- general controller may have reusable methods like allFoos() or
  isFooI18nKeyAdded(), by exposing them in corresponding interface, they can be
  accessed by the administrative bean to check if entity Foo is really not
  there.
- code convention applied: in comparison, first value then variable

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Fri, 3 Nov 2017 23:56:18 +0000 (00:56 +0100)]
Please cherry-pick:
- removed company from "basic_company_data" (and class names) as there will be
  no other basic data
- added view for headquarter listing (administrative)
- used more beanHelper's renderFoo(foo) methods as this is much easier to debug
- renamed ADMIN_SHOW_PHONE_NUMBER to ADMIN_SHOW_<FAX|LAND_LINE|MOBILE>_NUMBER
- added menu for headquarters (administrative)
- added custom JSF tag for administrative "mini-links" for headquarters
- added templates for form and opening times of headquarters
- fixed employee link outcomes, was copy-paste mistake (ops)
- renamed more headquarters -> headquarter
- addEmployee() is now "basically finished"
- changed h:outputLink to p:link which suits better here
- added missing navigation rules for headquarters/employees
- isCompanyNameUsed() and isEmailAddressRegistered() should be "basically
  finished"
- still one isEmailAddressRegistered() is left in generic contactController
- first value, then variable on comparison (null == someVariable)
- lot's more fixes/improvements I cannot remember ...

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Thu, 2 Nov 2017 21:08:06 +0000 (22:08 +0100)]
Please cherry-pick:
- upgraded PrimeFaces to latest community version 6.1

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe cherry-pick:
Roland Häder [Tue, 31 Oct 2017 19:04:59 +0000 (20:04 +0100)]
Maybe cherry-pick:
- renamed "category" path -> "product_category"
- renamed "product" path -> "generic_product"

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Tue, 31 Oct 2017 19:02:27 +0000 (20:02 +0100)]
Don't cherry-pick:
- added sequence number to receipt as some receipts beared it
- removed CSS class "input", more will follow
- generalized listing headers for administrative views: ADMIN_HEADER_FOO_BAR
- added more missing i18n keys

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Tue, 31 Oct 2017 18:55:52 +0000 (19:55 +0100)]
Please cherry-pick:
- added support for local i18n string bundles which may be useful when the
  application itself has i18n keys that could be "dynamic" (entered by
  administrator)
- all converters are now performing a CDI "lookup" and no EJB calls anymore
  which is nice for performance
- PrimeFaces have an upcoming feature when scripts and maybe CSS can be bundled
  which improves load performance of the web application
- but only with 6.2+ and with older versions this option is safely ignored
- removed CSS class "input" and other "2-corner rouded" styles, they may return
  in form of an own theme?

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe cherry-pick:
Roland Häder [Tue, 31 Oct 2017 18:44:33 +0000 (19:44 +0100)]
Maybe cherry-pick:
- added mini-links JSF tags for product categories and generic products
- added form templates for above again
- added views for listing both again
- added navigation rules to faces-config.xml
- rewrote converter to CDI "lookup" (programatic) which finally let the
  converter work without any EJB calls
- added filtered list for categories and products
- added product unit amount and type, like 1 liter
- categories and products have now both i18n keys and not direct and
  untranslateable titles
- rewrote + sorted renderGenericProduct() as products now have i18n keys
- added menu entries

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Sun, 29 Oct 2017 12:46:43 +0000 (13:46 +0100)]
Don't cherry-pick:
- fixed JNDI name, has to be: java:module/<SimpleClassName>

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe cherry-pick:
Roland Häder [Sun, 29 Oct 2017 12:45:30 +0000 (13:45 +0100)]
Maybe cherry-pick:
- fixed JNDI name, has to be: java:module/<SimpleClassName>

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Sun, 29 Oct 2017 12:42:57 +0000 (13:42 +0100)]
Please cherry-pick:
- fixed JNDI names for java:module, must be: java:module/<SimpleClassName>

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe cherry-pick:
Roland Häder [Sat, 28 Oct 2017 22:58:32 +0000 (00:58 +0200)]
Maybe cherry-pick:
- registered product taglib with web.xml (ops)
- added title attributes to p:inputNumber tags for entering product price
- needed to add thousandSeparator attribute as it will default to ',' which is
  maybe not valid/wanted in all languages (e.g. German language as a '.' as
  thousand separator and ',' for decimal seperation)
- this has also fixed a JavaScript error causing some malfunction in views
- labels are now shown correctly above each p:inputNumber field (product price)

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Sat, 28 Oct 2017 22:54:51 +0000 (00:54 +0200)]
Please cherry-pick:
- used MessageFormat.format() instead of concating, reducing String objects
- moved comment out of ui:composition which avoids adding another ui-row to the
  DOM document
- removed extra space in CSS class list

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Sat, 28 Oct 2017 22:51:00 +0000 (00:51 +0200)]
Don't cherry-pick:
- moved out comment above ui:composition to not cause another ui-row being added
- itemReceipt is a required field, marked it so in JSF view
- form for adding receipt items is "basicaly finished"
- there are now percentage and fixed discounts as some receipts has shown
- added/renamed i18n strings
- renamed 'financials' to 'financial'

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Sat, 28 Oct 2017 16:38:14 +0000 (18:38 +0200)]
Don't cherry-pick:
- renamed namespace from widgets to core as also other custom widgets (JSF tags)
  may come

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe cherry-pick:
Roland Häder [Sat, 28 Oct 2017 16:36:59 +0000 (18:36 +0200)]
Maybe cherry-pick:
- added taglib for jproduct
- added input panel-grid JSF widget for entering product prices with taxes, net
  and gross price

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Sat, 28 Oct 2017 16:34:03 +0000 (18:34 +0200)]
Please cherry-pick:
- renamed bundle -> generic as this is no longer the only language bundle
- renamed namespace from widgets to core as also other custom widgets (JSF tags)
  may come

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Fri, 27 Oct 2017 20:35:04 +0000 (22:35 +0200)]
Please cherry-pick:
- it is a jQuery-powered form, so need to take jQuery's submit() version instead
  of DOM document's

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Thu, 26 Oct 2017 19:19:08 +0000 (21:19 +0200)]
Don't cherry-pick:
- added/change net and gross price and tax rate
- remove wrong JSF code as it was copied from receipt template and is not
  needed/wanted in receipt items

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe cherry-pick:
Roland Häder [Thu, 26 Oct 2017 18:27:14 +0000 (20:27 +0200)]
Maybe cherry-pick:
- updated add methods to new way:
  + create a private create<Entity>Instance() which copies all fields from
    backing bean to entity class
  + invoke that method before try/catch block
  + only cover method invocations in try() block that are really necessarry to
    catch thrown exceptions, e.g. clear() will never throw an exception, unless
    you make somthing *REALLY* horrible wrong
  + events should be fired after try/catch blocks, so the updated<Entity>
    instance be declared before it (not initialized)

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe cherry-pick:
Roland Häder [Mon, 23 Oct 2017 21:22:08 +0000 (23:22 +0200)]
Maybe cherry-pick:
- methods had been unified, need to rename here, to
- added default constructors, invoking super constructor and initializing list

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Tue, 17 Oct 2017 23:38:59 +0000 (01:38 +0200)]
Please cherry-pick:
- renamed as other projects are

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Tue, 17 Oct 2017 23:31:04 +0000 (01:31 +0200)]
Don't cherry-pick:
- fixed imports as the package has been renamed

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Tue, 17 Oct 2017 21:50:54 +0000 (23:50 +0200)]
Don't cherry-pick:
- switched converters/validators which are converting primary keys (id numbers)
  into entities from EJB-based lookup to backing-bean-based lookup as this is
  much better performing (EJB calls are relative "expensive")
- the backing bean will then check cache which is basically a distributed Map
  (Cache interface) where the primary key is also the key for cache entries
- a SomeEntityNotFoundException is being thrown when containsKey() returns
  false which is then caught by the calling method
- fixed imports from "renaming season" ;-)
- added missing JSF tag template admin_receipt_item_links.tpl
- added converter for receipt, generic product and product category
- receipts/receipt items will always (?) be jfinancials ;-)
- some messages needed to be switch msg -> project as they are project-specific

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Tue, 17 Oct 2017 21:42:44 +0000 (23:42 +0200)]
Please cherry-pick:
- switched converters/validators which are converting primary keys (id numbers)
  into entities from EJB-based lookup to backing-bean-based lookup as this is
  much better performing (EJB calls are relative "expensive")
- the backing bean will then check cache which is basically a distributed Map
  (Cache interface) where the primary key is also the key for cache entries
- a SomeEntityNotFoundException is being thrown when containsKey() returns
  false which is then caught by the calling method
- fixed imports from "renaming season" ;-)
- renamed contactsCache -> contactCache as other caches are named same way
- no need for company employee, basic data, branch offices and departments

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Sat, 14 Oct 2017 19:03:47 +0000 (21:03 +0200)]
Please cherry-pick:
- simplified for() loop, no need for extra iteration + next instance as a simple
  double-dot (:) does the same on a List<Foo>

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe cherry-pick:
Roland Häder [Sat, 14 Oct 2017 19:02:33 +0000 (21:02 +0200)]
Maybe cherry-pick:
- added backing beans for product and category, administrative and general each

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoMaybe repeat:
Roland Häder [Sat, 14 Oct 2017 19:01:00 +0000 (21:01 +0200)]
Maybe repeat:
- added depdendency to jproduct-lib

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Sat, 14 Oct 2017 17:01:28 +0000 (19:01 +0200)]
Don't cherry-pick:
- added backing bean for general and administrative purposes for receipt items
- added list view for receipt items
- added form template for receipt items
- added JSF custom tag for administrative links
- some language strings reassigned from msg (general) to project-specific
  message bundle
- added navigation case for listing receipt items

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Thu, 12 Oct 2017 23:51:26 +0000 (01:51 +0200)]
Please cherry-pick:
- added template for adding branch office opening times
- added all required fields in adminBranchOfficeController bean
- opening times for branch offices are now set, if provided, in new branchOffice
  instance
- double opening times won't be accepted
- added clear() method, seem not to affect formular in PrimeFaces
- added missing navigation cases

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Thu, 12 Oct 2017 20:25:42 +0000 (22:25 +0200)]
Don't cherry-pick:
- added department name for sales

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Thu, 12 Oct 2017 20:13:09 +0000 (22:13 +0200)]
Please cherry-pick:
- loading of both i18n (resource) bundles is now possible
- departmentName has been transformed into departmentI18nKey to allow
  localization of the department's name
- also rewrote i18n key for entering department's i18n key
- splitted header line and "enter bla" for department i18n key, was to long

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Wed, 11 Oct 2017 20:53:54 +0000 (22:53 +0200)]
Don't cherry-pick:
- used fn:length(someList) instead of someLength.size()

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Wed, 11 Oct 2017 20:51:47 +0000 (22:51 +0200)]
Please cherry-pick:
- preparation for rewrite: removed rendered attribute
- used fn:length(someList) instead of someList.size()

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoDon't cherry-pick:
Roland Häder [Sun, 8 Oct 2017 17:00:14 +0000 (19:00 +0200)]
Don't cherry-pick:
- FIELD_PAYMENT_TYPE_REQUIRED is generic enough, no need for this project only

Signed-off-by: Roland Häder <roland@mxchange.org>
7 years agoPlease cherry-pick:
Roland Häder [Sun, 8 Oct 2017 16:55:25 +0000 (18:55 +0200)]
Please cherry-pick:
- rewrote administrative user list to PrimeFaces with filters and multi-sortable
  and resizable columns
- fixed header facet for mobile provider list
- rewrote admin_form_user/contact_data.tpl to response p:panelGrid
- converted div to h:panelGroup
- added more "static" data like personal title, account status and profile mode
- added missing i18n strings

Signed-off-by: Roland Häder <roland@mxchange.org>