**********************************************************************************
Application notes
**********************************************************************************
Core:
Aura
commons
skin
xw
xwdoc
1.0.9 15/12/2016
- FIX: ERM009130 added entites deescaping
1.0.8 15/11/2016
- FIX: accesso diretto con url, per coretta formatazione dei titoli serve parametro: fPubbId
1.0.7 14/11/2016
- MOD: aggiunta posibilita di chiamare query dalla url
http://..url.../?query=B64
1.0.6 20/07/2016
- MOD: aggiunta possibilita di avere risultati ordinati con la order by globale
questa va configurata dentro config.php con aggiunta della riga:
define('__GLOBAL_DEFAULT_ORDER_BY__', 'xml(xpart:/doc/@data_prot)');
questo ordinamento va usato in vaschette e anche nelle ricerce se non specificato un order by uleriore
- FIX: added 'fOrderByState' in reset cleaning process app.config.inc->app.restartResetData
1.0.5 13/05/2016
- Added regexp replacing on columns
1.0.4 29/03/2016
- Created Motta config
1.0.3 15/05/2015
- Added media column
1.0.2 15/05/2015
- UI aggiustamenti interfaccia
1.0.1 12/05/2015
- funzioni completate
1.0.0 01/03/2015
- created
**********************************************************************************
C O R E notes
**********************************************************************************
--- Remember to change the pxml.php file when a new version in released ---
4.10.2 14/11/2016
- Fix escaping xml node in XwDocDesktopHelper
4.10.10 14/01/2016
- STABLE: release 004_010_000 branched
4.9.26 12/01/2016
- FIX: missing USE
4.9.25 07/01/2016
- FIX: xw.pkg/pxml/xw/db/filter/ThenFilterQueue.php __sleep send nonexisting field
4.9.24 12/11/2015
- FIX: pxml.edit.js:440 assignement in condition
4.9.23 09/11/2015
- FIX: removed use di not used var in pxml.ajax.js
4.9.22 19/10/2015
- MOD refactor final comments in change log from slash double star to slash single star, due to broken code hinting in eclipse
4.9.21 19/10/2015
- ADD possibility to skip class loading from some library package
'skipClassLoader' => true,
will handle task
- ADD possibility to inherit resources, there is new attribute in package manifest lib.php in 'resources' array
'inherit' => '',
this give us non intrusive possibility to override resources.
So we can create some lib package with just some overloaded resources and it will fall back
in all others into inheritanc eparent package, this is applicable to all resources loadable via resource manager
if it recognise presence of inherit attribute, it will check existance of resource, and in case of missing rs
it will try to load from inherited library.
4.9.20 08/10/2015
- FIX non orderable coluns hiding
- FIX 'search-sortable' identification basing on non corect class match SearchFormService.php
4.9.19 05/10/2015
- MOD added 'formatTimeFromXW' in DataFmt.php
4.9.18 02/10/2015
- FIX missing 'xmlAutoEditIsDone' event in case of 'cancelNewAction'
4.9.17 21/09/2015
- FIX prototype.js (1.7.2) for some mobile js interpreters (EGAF #3597)
- FIX print manager whole page and intervall settings
4.9.16 14/09/2015
- FIX Css tweaks
- FIX missing class use declaration for pxml\xw\db\XwResponse
- FIX fixed options parameter in PageNavigator (now it must be an array)
- ADD new method for checklist.manager.js createManager, so we can handle just one instance in page
4.9.15 08/09/2015
- MOD add posibility to ask confirmation if there is click to navig tree during edit
- MOD add posibility to signal event to javascrit for Start/End editing
- xmlAutoEditIsDone
- xmlAutoEditIsStarted
4.9.14 07/09/2015
- FIX TitlesService had non generic handling for execute case 'selFilter'
now the parameter determinign query for XW have to arrive form external call
in selection filtwer options as new parameter 'xwQueryXp'
if not present it will be used default '?ndoc' => search for idIUnit
4.9.13 04/09/2015
- ADD added functions public function getSearchField($id) , public function getDataField($id)in SFormFieldFactory
due to better flexibility to render forms customisations
- ADD posibility explicitly pair 2 fields as interval extrems for search form
so if there are 2 fields in FilterObject with convention:
min: __as__min
max: __as__max
they will be handled as interval during filter condition construction
we add necessary handling in FilterField base
4.9.12 23/07/2015
- ADD XmlObject_DEBUG.php
- FIX use of UIAddCss on simple Text
- FIX missing labels in widgets
4.9.11 22/07/2015
- ADD startCopyEdit action in AutoEdit system, so we can creatre new record by copy from existing one
- FIX SearchFOrmService initialisation in case called from XmlAutoedit after redirect
- ADD startCopyEdit action in AutoEdit system, so we can creatre new record by copy from existing one
4.9.10 21/07/2015
- ADD XmlObjectFormatOnBind-it will force data formatting on each bind
- FIX format XmlObject.php
- ADD function getAncestorByName in XmlModel
- ADD function getAncestorByName in XmlFIeld
- FIX template refference
- FIX minor fixes in css edit.css
4.9.9 16/07/2015
- ADD XslFormattedXmlObjectRenderer and XmlObjectXml which represent static XML part of model with possibility to render it with XSL
- ADD posibility tu use algorithm for rs_file_type_match_on_xp schema include type
attr('doc_type_value_xp') :
// - //xpath
// - array('class name', array())
// where null in param array will be replaced with Xml,
so we can handle arbitrary algorithm on orginal document DOM and decide what include then.
- ADD method toNumber on DataField
- ADD IXmlAlgorithm base for any algorithm executed on some Xml
4.9.8 30/06/2015
- MOD SFormFieldFactory.php for validation messages
- MOD pxml.edit.js for instantValidation messages
- MOD forms.pxml for validation messages
4.9.7 22/06/2015
- MOD SResManager.php changed in function getString. Inside body function, changed the name of the variable $key in $temKey due to wrong implementation
of return statement because the condition returnOriginalIfNotFound returns not the $key value passed by argument but the new $key variable modified inside the function,
that maybe has lost the original value. Code smell error.
4.9.6 17/06/2015
- MOD in commons.pkg/rs/tmpl/fomrs.pxml add in SimpleTextDiv if value is empty set it to nbsp
4.9.5 12/06/2015
- ADD: SResManager.php add a new method, named getBrowserNameString(), that gives the browser name with no version details.
4.9.4 12/05/2015
- ADD: posibility to obain desktop rule from provider
DesktopService, XwDocDesktopHelper, IXmlProvider
4.9.3 08/05/2015
- ADD: refresh internal data functionality in SXwTitlesHelper
- ADD: NoConditionFilterField.php field with no condition efect
- ADD: commons.formatDateTimeIso in commons-lib.xsl, it formats yyyymmddThhmmss -> dd/mm/yyyy hh:mm:ss
4.9.2 07/05/2015
- FIX: fixed check box as master field pxml.edit.js
- FIX: XwColumnsHelper missing $this in function call
- MOD: JsEditEventsHandlerService can handle array of UI updates
4.9.1 06/05/2015
- FIX: finfo to \finfo
- FIX: warnings
- MOD: fix array dereferencing
- MOD: modified whole titles configuration, in order to automatise as much as possible
ATitlesItem.php - some fixes
IArrayProvider.php - Base class for array provider
TitlesItem.php - automated titles handling
GlobalColumnsProvider.php - example of Columns array provider
SXwTitlesHelper.php - strong refactor for __AUTO__ generation, defaults, and other modifications
XwColumnsHelper.php - strong refactor for __AUTO__ generation, defaults, and other modifications
XwOrderByHelper.php - strong refactor for __AUTO__ generation, defaults, and other modifications
TitleRow.php - automated titles handling
- MOD: DataFmt::titleRowToArrayAssoc handle also types of columns, specificaly 'd:...'
- FIX: removed unused function
4.9.0 05/05/2015
- STABLE: release 004_008_000 branched
4.7.23 13/04/2015
- MOD: SResManager.php on call of setCookieVar to set default values of path and domain (ignorePath = true, ignoreDomain = true)
- MOD: SApplication.php on function setCookieVar add input params ingnorePath and ignoreDomain to set path and domain of a cookie to its default values if the cookie is specific of the application
4.7.22 20/03/2015
- MOD: ThenFilterObject.php fix on getFilterCondition to return the correct query string
4.7.21 18/03/1985
- MOD: ThenFilterQueue.php now the class detect if a group of then filter elements are selected. In this case create the new condition in AND of the then fields,
set the condition of the first element of the group and skip the condition of the others,
set an array of selection order for the correct position of the selection elements for the query string
- MOD: ThenFilterObject.php change function getFilterCondition to return the correct filter condition due to the grouping of then filter fields
- MOD: ThenFilterFieldBase.php add function setSkipCondition that return nothing. The then filter field that extend this object has to overload this method. If not the default value is false.
4.7.20 17/03/2015
- MOD: added new config param in app.config.inc
app.cookie.path => '/' which can indicate cookie path atribute
app.cookie.domain => null
4.7.19 16/03/2015
- MOD: AutoCompleteValue.php in __construct add value element always
4.7.18 13/03/2015
- MOD: AutoCompleteValue.php changed constructor. After the highlight of the label, add the frequency occurrence with  
- MOD: in function decode changed the creation of label tag. Now the frequency of occurency is send like a param and not appended to the label var
4.7.17 09/02/2015
- MOD: pxml.edit.js in function onInstantValidationResultEvent shwo the validation message if there is a valid validation message
- MOD: commons.pkg/pxml/commons/service/ajax/ValidationService.php add escape special chars before showing the validation message
4.7.16 21/01/2015
- MOD: input-sanitizer.config.inc add configurations for POST, GET, COOKIE variables
- FIX: SInputSanitizer.php fix on function sanitize. On POST, GET and COOKIE add rules to sanitize the values of this params
4.7.15 19/01/2015
- FIX: Pxml.InstantValidated::create on non existing element bug
4.7.14 09/01/2015
- ADD: xml object collection values collectiong mecanics
4.7.13 24/12/2014
- FIX: validateDate in DateValidator.php
4.7.12 17/12/2014
- MOD: updated iwx.core.js and iwx.runtime.js for Iwx 2.2.2+ calling interface and events
- MOD: in pxml.edit.js in onInstantValidationResultEvent function add the fix to remove any validator messages if present
4.7.11 17/12/2014
- MOD: added example service for instant model independend validation pxml\xw\service\ajax\NoModelValidationService
4.7.10 09/12/2014
- FIX: in commons.pkg/pxml/commons/db/data/validator/DateValidator.php add function validateDate($date, $format) to
validate a string that represent a data field in the specified format (default: d/m/Y or equivalent dd/mm/yyyy)
4.7.9 29/10/2014
- FIX: strict inheritance in DocWayTitlesService.php
- ADD: new persistor PT_XCACHE
- ADD: new persistor type PT_AUTO
this will choose it self depending what is available
it will choose between PT_ZEND_HYBRID, PT_XCACHE and PT_FILE
- FIX: usingn xcache we have to avoid circular autoloading dependancies
- MOD: SInputSanitizer.php now corectly handle also cookies with configurable rules
- MOD: completed zend server inependancy process
now all pxml can work also without zend server caching
persistor can be configured or as PT_FILE or as PT_XCACHE
- MOD: adapt all eventual .htaccess for apache 2.4.x and backward compatibility for apache 2.2.x
there are strong diferences in security handling in apache 2.4.x (http://httpd.apache.org/docs/2.4/upgrading.html)
so we use to determine correct apache version mod_version
add this in .htaccess in root directry
LoadModule version_module modules/mod_version.so
so we modify all .htaccess files so it function in both environments
4.7.8 29/09/2014
- FIX: User profile refresh after manual login force
4.7.7 17/09/2014
- FIX: DEBUG_WARINIG -> DEBUG_WARNING in HtmlBody.php
4.7.6 12/09/2014
- FIX: possible xss using cookies vector
4.7.5 09/09/2014
- FIX: Changed 'Titotli' into 'Titoli' in xw.pkg/rs/i18/IT/default.properties
4.7.4 30/07/2014
- MOD: EmailValidator updatae the method to validate a string that represent an email address
Now the validate function uses the filter_var and checkdnsrr to validate the email addres checking if it's in the correct format and if the domani is correct
If filter_var and checkdnsrr are not avilable the function use a regular expression (the same in filter_var) to check the email address format
and the getmxrr function (or the windows variant) to validate the email domain
4.7.3 24/07/2014
- FIX: for attribute httponly of cookie we add config, cause when there is iwx, it cant cee httponly cookies
and so there is no posibility to upload in authenticated session
so we refix all points where cookie is set, with config SApplication.php, RouterAdv.php, Session.php
there are 2 params for app.config.inc
- 'app.cookie.httpOnly' => false,
- 'app.cookie.secure' => false,
- MOD: update iwx.core.js for iwx 2.1.22
4.7.2 24/07/2014
- FIX: IE 11.0 was not corectly recognised => problems with favicon.ico
- updated browser detection
- separated favicon.ico link generation for IE and others
4.7.1 23/07/2014
- mod XmlAutoEditService function execute add in case deletePart the execute hook after a part is deleted and in case
restorePart add hook after a part is restored
- mod XmlDocumentEditActionBase add ED_ACT_JUST_AFTER_DELETE_PART and ED_ACT_JUST_AFTER_RESTORE_PART editing action hooks
4.7.0 23/07/2014
- New head versioned
4.6.0 23/07/2014
- STABLE: release 004_006_000 branched
4.5.14 14/07/2014
- continue on services content caching AjaxServiceGate.php,SApplication.php,BaseHandler.php,ICacheHandler.php,FileLock.php,NamedIndex.php,PersistorStats.php,PersistorZendBase.php
PersistorZendHybrid.php,Session.php,User.php
- added new url command mapping [../service/resetCache] it will invalidate all services content cache
- mod error message formatting in case of warning
- changed gif ajax activity into pure javascript spinner
- add javascript minimize building and use of all minimized javascripts *.min.js in iter.pkg
all min javascript will be considere in case there is set :
'livesite.page.jsFramework' => HtmlHead::JS_JSFRAMEWORK_RELEASE,
in app.config.inc
- mod updated phpmailer to last stable version
4.5.13 11/07/2014
- mod XmlObjectCollection add check in function injectXml. If an element in collection has the attribute erased equals true,
the injection doesn't put the node into collection
- mod XmlObject add chenk if element is erased in functions dumpIntoDom and dumpXml
4.5.12 10/07/2014
- add in XwDatabase.php management of connection_timeout and default_socket_timeout reading value from 'db.config.inc'
4.5.11 09/07/2014
- fix in XwDocumentModel function getXmlObject add parameter strict to enable/disable the throw exception
- add (egaf) added generic element render in html head (HtmlHead, Page, pages.config.inc)
all depends on pages.config.inc
array('generic' => 'link', 'rel' => 'apple-touch-icon-precomposed', 'href' => 'apple-touch-icon.png') =>
array('generic' => 'link', 'rel' => 'apple-touch-icon-precomposed', 'href' => array('name'=>'touch/apple-touch-icon.png', 'ns'=>'iter', 'type'=>'img') =>
- mod update to prototype.js v 1.7.2, replicated fixes
1500: queryValues.push(toQueryPair(key, value)); => queryValues.push(toQueryPair(key + '[]', value));
3127: if (style === 'opacity' && !STANDARD_CSS_OPACITY_SUPPORTED)
return getOpacity_IE(element); =>
if (style === 'opacity') {
if (!STANDARD_CSS_OPACITY_SUPPORTED) {
return getOpacity_IE(element);
} else {
value = value ? parseFloat(value) : 1.0;
}
}
3144: //@since 4.5.11
if (element.currentStyle != undefined && element.currentStyle != null && element.currentStyle.hasLayout != undefined && !element.currentStyle.hasLayout)
//if (!element.currentStyle || !element.currentStyle.hasLayout)
6300: if(element.tagName != undefined){
if (serializers[element.tagName.toLowerCase()])
results.push(Element.extend(element));
}
/*
if (serializers[element.tagName.toLowerCase()])
results.push(Element.extend(element));
*/
4.5.10 30/06/2014
- fix incorect case in PersistorZendHybrid class name in SPersistorFactory
4.5.9 26/06/2014
- fix for xss on cookies, there were posibility to obtain error page with part of cookie in error mesage
- fix for error reporting for security reasons
4.5.8 25/06/2014
- fix double encoding of texts while they were dumped into dom, we should escape texts just when we produce manually xml
- fix on Datafmt::money_format($format, $number), there were some noticies
4.5.7 23/06/2014
- mod in EmailValidator.php use preg_match instead of ereg 'cause it's deprecated
4.5.6 23/06/2014
- mod in Session.php mod start function to add the secure flag if needed
- mod in RouterAdv.php mod takeCookies function to add the secure flag if needed
- mod in SApplication.php mod setCookieVar function to add the secure flag if needed
4.5.5 19/06/2014
- added httpOnly for cookies
4.5.4 18/06/2014
- FIX: multipage tiff thumb generation
4.5.3 13/06/2014
- MOD: xw.reports.js in onReportManagerEvent in switch-case generatereport add the control of an empty list of possible report
- MOD: XwDatabase.php add generateReportFromSPAsynchronous function
4.5.2 09/06/2014
- MOD: reports2.pxml check the correct checkbox of the number of record the user want to report.
- MOD: xw.reports.js on function start add the param recordsSelected to send to the fCmd manager
on function onReportManagerEvent, case generatereport, add the data fOnlySelectedString for the onlySelected option
- MOD: default.properties (IT/EN) add the title of the popup dialog shown up when the report is generated
- MOD: ReportManagerOptions.php add field recordsSelected for the enable of the corresponding checkbox on the ReportManager Dialog
- MOD: ReportManagerService.php on manager case: add recordsSelected value to check the correct checkbox on the ReportManager Dialog
on onlySelected case: add the read of the documents indexs string to do the report
4.5.1 27/05/2014
- FIX: pxml4 fixes in cdm.pkg
- ADD: trace logs in case of somthing is missing
- ADD: 2 new default rules: /mediaupload, /iwxGate
4.5.0 27/05/2014
- MOD: strong refactor of persistance layer
- fixed : zend_disk, zend_mem
- added new kind of cache-> hybrid, it use ram for all data under certain configured trashold,
rest go disk [SPersistorFactory::PT_ZEND_HYBRID]
- there are new config variables in app.config.inc
'app.persistorType' => SPersistorFactory::PT_ZEND_SHM,
'app.persistorInfinityExpiry' => 86400, // 24 hours
'app.makeCacheOccupationStat' => true, // make statistic, so we can tune ram cache
'app.shmDiskThreshold' => 51200, //10k bytes
- MOD: some minor fixex for gc in : ISession.php, Session.php
- ADD: possibility to ceche service call (highly EXPERIMENTAL feature)
this can be configured in services section in app.config.inc
f.e.: 'SearchFormService' => array(
'class' => 'pxml.xw.service.ajax.SearchFormService',
'access' => 'inherit',
'cache' => array(
'active' => false,
'expire' => 300 //expire 60 seconds
)
),
- ADD: session garbage collection due to Zend dir removing bug
- ADD: added now variables scope [pxml] that means there is global off user session space, you can access to those variables using helper functions:
getPxmlVariable($name, $default = null, $namespace = '')
setPxmlVariable($name, $value, $namespace = '', $expire = -1 )
- FIX: some fixes in SUrlDispatcher.php
- MOD: extended logging format
- DEPRECATE:
fileUploadGate.php
login.php
logout.php
logoutTransp.php
pxmlIWxHttpGate.php
pxmlMediaUploadGate.php
pxmlPagesGate.php
pxmlServiceGate.php
pxmlStat.php
xwDocFileUploadGate.php
- MOD: there is possibility to turn off [Error] implicit logging in error constructor
using config: except.logExceptionsFromConstructor from log.config.inc
- ADD: two warnings: SessionExpiredWarning, SessionMissingWarning
- ADD: asynchronous execution for PXML
- there is possibility to write some IAsyncHandler implementation which will
do some pxml asynchronous (not browser dependent) proccess execution
in pure PHP sandbox. This call can be done by : PxmlAsyncExecute::executeAsync();
during this call will be generated async call token which will be saved in
session or eventually in pxml variable. (pxml variable global off user context)
This token then will be controlled prior of async execution, and async proccess will
run only if token is OK. for better understunding read : PxmlAsyncExecute.php
with this method ther is handled sessions garbage collectiong.
- there is added new [async_exe.config.inc] for eventual async execution configuration.
- we also modified [default-url-dispatch.config.inc] for new route rule [/asyncExe]
- check also one example async handler: AsyncZendCacheCleaner.php
- MOD: removed useles exceptions
- FIX: stat ui updated (host)/pxmlStat
- FIX: some ui tweaks in commons.pkg/rs/tmpl/config.pxml
- FIX: missind use in XwDocumentHelper.php
4.4.0 26/05/2014
- Stable Release.
4.3.39 21/05/2014
- FIX: use of route /iwxGate instead of old gate
- ADD: IWxMediaHandler.php for iwx upload/download requests, so lib/pxmlIWxHttpGate.php will be dismis.
- FIX: updated iwx.core.js for 2.1.18r
4.3.38 12/05/2014
- MOD: Mail.php add the BCC field value.
4.3.37 28/04/2014
- MOD: restore DocumentViewService.php without ajaxContentLoaded {type:documentScrollView} for the feature request #2175
Now the Iter.ScrollMan is register on type documentView.
4.3.36 22/04/2014
- MOD /lib/commons.pkg/pxml/commons/core/mail/Mail.php fix on call class \PHPMailer
- MOD /3di.pxml4.iter/lib/commons.pkg/rs/tmpl/html_base.pxml fix error for ticket #2261 on line 59
for the javascript injection bug.
4.3.35 15/04/2014
- MOD: ErrorPopupContent.php add configuration to show or not the message on expired session on reload.
- MOD: DocumentViewService.php add ajaxContentLoaded {type:documentScrollView} for the feature request #2175
4.3.34 07/04/2014
- MOD: added forcing of default language in case it is not declared as usable language SResManager
4.3.33 04/04/2014
- MOD: commons.pkg/pxml/commons/core/route/SUrlDispatcher.php
on Session Expired if the request is about an image we responde with the ImageSessionExpired.png
4.3.32 02/03/2014
- FIX: SimpleSelect template for multiple selection case, adding hidden for null state
4.3.31 01/03/2014
- ADD: pxml\xw\db\model\XmlFieldNonSchemaDependant its XmlField clone which is not dependant from schema and it can be created in DataFiled manner with options array,
it is good for manual model subparts creation
- ADD: pxml\xw\db\model\schema\XmlObjectUIClass for schema editing
4.3.30 31/03/2014
- ADD: LoaderHelper class
- MOD: update default.properties in folder xw.pkg/rs/i18/["EN","IT"]
4.3.29 26/03/2014
- FIX: SearchFormService page title
- ADD: pxml\commons\ui\component\generic\Img
4.3.28 25/03/2014
- FIX: TitlesService was not corectly handling situation of fCmd='sel' it was using fData='current' and not fSelectionID
- FIX: sintax sugar fix (interface method implementation missing)
XmlAttachmentsModel.php
XmlXwAttachment.php
XmlXwAttachments.php
XmlXwFile.php
- ADD: new method in SRsmanager::putRsXml which will save xml fil in resources
- FIX: conformity with 4.3.23 isEqual add in XmlObjects
XmlObject.php
XmlObjectCollection.php
4.3.27 20/03/2014
- ADD: Test controler
- FIX: SInputSanitizer Black List rule was refactored to more filter less blind hits
4.3.26 19/03/2014
- MOD: style in error.php
- ADD: created new default navigation rule /version
it is replace of old version and change log visualisation
it is possible define custom change log files, which will be add to application and core log
this files are defined in generic.config.inc ex:
//custom version files
'version.customfiles' => array(
constant('__PXML_ROOT__') . '/uni.pkg/version.txt'
)
- FIX: sintax fix in comment of SLoader
- MOD: created set of default navigation rules for SUrlDispatcher
they are defined in default-url-dispatch.config.inc
/service, /user, /version
these rules can be overriden in url-dispatch.config.inc
4.3.25 18/03/2014
- FIX: openUrlInPopup function in pxml.js
- MOD: complete refactor of signing method, there is added xw:file in db like brother fo original
attachment:
original will obtain attribute signed="" and signed derived have attribute signed="true"
there is onTitle trigger active which create virtual attribute inside xw:file
local signed = n:getAttribute('signed')
if signed ~= '' then
n:setAttribute('attachId','signY|s|' .. signed)
else
n:setAttribute('attachId','signN|s|' .. n:getAttribute('name'))
end
so we can handle direct signed show, and in case of signed attachment original is hidden
for this we have to change many files
- FIX: selectionId handling in case of History application from crumbles click
- FIX: SelectionTreeLeftMenuPanelService was not coretly handling class of service
- FIX: in setCurrent set handling and query reexecution
- ADD: user data model
- FIX: fixed all empty() use on string values where eventually can arrive '0', so we made is_empty() custom function for handle it
- FIX: fixed db creation params in SXwDatabaseFactory
- MOD: XwDocumentModel::create use better xml parameter, and $this->_modelConfigId must be set
- ADD: new force parameter to setCurentset call in XwDatabase
- FIX: SInputSanitizer improved rules
- FIX: HistoryRecord was not coretly handling SelectionID
- ADD: invalidation event type SApplication
4.3.24 17/03/2014
- FIX: SLoader modules scan
- FIX: error message retrieval in error.php
- FIX: of multi login using ACL user source
patched : User, XwDocWayDatabase, EC_XwDatabase
4.3.23 10/03/2014
- FIX: XmlObject::dumpStructureXml was stop dumping on invisible group, we changed it, so if there are children it return children instead of empty string
- FIX: use of new method isEqual instead of '=='
- FIX: 2 XmlField cant be compared simply by '==' but it should be done by '===' due to strong recursive problems
so we add method isEqual
4.3.22 07/03/2014
- FIX: SortableSearchFormContent now really use custom SearchFormActions class as specified in filter.config.inc. Introduced method
drawActions in SortableSearchFormContent.php which is called in SortableSearchFormContent template.
4.3.21 07/03/2014
- FIX: XmlObjectCollection::dumpStructureXml was skipping current node editing tree, now it follow structure
if current edited object is descendant of some of direct child of collection
- FIX: XmlObject::dumpStructureXml was skipping new nodes
4.3.20 06/03/2014
- FIX: out of set handling after redirect vs DocumentViewService
- FIX: tinyMce was not reseting it self in time, so we add cleaning on ajaxBeforeReplaceChildren event
this event then is removed when is not more necesary, fix done in pxml.edit.js
4.3.19 28/02/2014
- FIX: in TitlesService::getBrowserHistoryCallParams() was not handling 'sel' command
- ADD: we add new proxy events on ajax management:
ajaxBeforeAppendAsFirstChild - when taconite is about to add new dom elements
params: {element: }
ajaxBeforeInsertAfter - when taconite is about to add new dom elements
params: {element: }
ajaxBeforeInsertBefore - when taconite is about to add new dom elements
params: {element: }
ajaxBeforeReplace - when taconite is about to replace dom elements
params: {element: }
ajaxBeforeDelete - when taconite is about to remove dom elements
params: {element: }
ajaxBeforeReplaceChildren - when taconite is about to replace dom elements
params: {element: }
ajaxBeforeCall - when taconit is about to make ajax call
params: all ajax call parameters
NOTE: they must be used wit caution, cause not correct code can broke page performance!!
- FIX: TinyMce refresh refactor and multiple versions handling
- MOD: Pxml.EventProxy was refactored to modern singleton declarration, and we beter handle adding for event listeners, it can be multiple requests for the same object
- FIX: complete refactor of redrow for tinyMce editors, so we remove 'ResetEditors' event
- ADD: tinyMce version 4, there is posibility to choose version '3' or '4' in forms.config.inc
- FIX: SFormFieldFactory was not escaping backslashes in class names for 'lkp_fmtClass'
- FIX: selt => self in DataFmt::convert_entity
- FIX: XmlObjectHtml was incorectly binding to Xml and there were entity translation error
- FIX: of script loading and its conclusion detection, added out of closure requests hashmap
- FIX: MediaRenderer forward fpfx param into mediaupload handler
- MOD: modified MediaRenderer template for new mediaupload request handler usage instead of old lib/pxmlMediaUploadGate.php
- ADD: new http request handler for route /mediaupload
MediaUpload it replace old lib/pxmlMediaUploadGate.php gate.
4.3.18 26/02/2014
- FIX: refactor of editing navigation structure and functionality, there was removed posibility to distinguish
groups or not dumping. Now it just dump what have sense to navigate long and big editing forms.
4.3.17 20/02/2014
- ADD: added flag erased in XmlObject to rapresent an object that is marked deleted but must be hidden in views
- XmlObject.php: added flag and methods to test and retrive it
- XmlObjectColection.php: in injectXml setErased is used instead of setDeleted
- CollectionValuesGrid.php: if xmlobject in line is erased, skip it (is not drawn)
- ADD: added method searchClosestUniqueXmlObjectById in ModelTree objects
- ADD: new base Xml model object XmlFieldText, it is nodeValue mapping field, it is alternative to
with value. So now we can define soem xml element like pure XmlObject and its nodeValue
will be represented by regula child field, so we can handle beter editing and also UI aspects
example of use:
HERE ->
there is just one important thing: its type must be 'nodeValue'
- MOD: - XwDocumentModel have new method searchClosestUniqueXmlObjectById
- MOD: - XmlModel become 'EventDispatcher' there is added also one new event [EVT_MODEL_JUST_AFTER_XML_BIND] it is fired when model is binded to xml
so we can use it in many places to make some specific initialisations
- XmlModel have alse new method: searchClosestUniqueXmlObjectById - it search closest field with fixed ID from some pivot Field
- XmlModel handle multiple fields with the same fixed ID. Now method registerXmlBindable handle multiple registers for the same id, so
it will return array in case some one want XmlField by id with multiple presence.
- MOD: structure of jsEvents data for model fields
- MOD: we made some changes in JSEvents subsistem:
- added harvested data array in JsEvent object. use getHarvested() to obtain it
- added array of event params. use getParams() to obtain it:
those params are configured in editing schema under specific jsEvent handler:
...
...
- FIX: some skin tweeks skins.pxml
- MOD: added container ID to each formfield layouts, so it can be used for field redraw
- MOD: added Form field factory in XmlJsEditEventActionBase which is base class for all js events, so we can use it
for eventual form parts redraw
- ADD: we add possibility to use SXmlFormFieldFactory stand alone for generate UI of fields, it is handy when we need dinamically
redraw some fields on form during JsEvents handling, for this we made some tweeks in SXmlFormFieldFactory and SFormFieldFactory
- FIX: sintax error in AjaxReplace
- FIX: autocemplete behavior was using incorect url pattern in FormSkinnableFieldPartBase
4.3.16 19/02/2014
- MOD: complete refactor of edit form scrolling using edit navigation tree
- FieldsGroupDiv added id for scroll jump
- forms.pxml - fixed FieldsGroupDiv and FieldsGroup template
- XmlObject, XmlObjectCollection, XmlObjectSubModelRoot - modified dumpStructureXml function to generate correct ID jumps
- modified SXmlFormFieldFactory, xw.runtime.js and xmlEditing.pxml
- FIX: fixing widgets configuration
- ADD: adding border style when dragging a widget component
widget.css
.widget_container .ss-placeholder-child {
...
}
- FIX: parse bool __currentDragState from draggable configuration into initLayout function
pxml.widget.js
4.3.15 18/02/2014
- MOD: porting titles, desktop and test widget in pxml 4
- MOD: widget cascading config edit will work with 3-state bools instead of true/false, we will use inherit/true/false
- MOD: changed policy of redraw for all widgets, they will just reload content of widget not its current holding DIV
for this we add new option for creration call [renderJustForRedraw]
this change is propagated to rest of the system starting in WidgetSupportService
- FIX: added conf-examples into modules xw.pkg, and widget.pkg
4.3.14 17/02/2014
- FIX: debug done on SLoader, SResManager for pxml library dislocation
steps to do for correct dislocation:
1: create new project in eclipse 3di.pxml4.xxxx.libs
2: add inside correct version of lib from core with all requested packages
3: setup correct pxml rot path to the lib dir in constant for specific config (config.php):
...
define('__PXML_ROOT__', 'D:/Projekty/PhpWS/3di.pxml4.xxxx.libs/lib');
...
4: setup alias for virtual host
....
Alias /lib/ "D:/Projekty/PhpWS/3di.pxml4.xxxx.libs/lib/"
....
and
Options FollowSymLinks Indexes MultiViews
DirectoryIndex index.php
AllowOverride All
Order Deny,Allow
Deny from all
5: Check (and change) .htaccess (into application) to ensure it ends with...
RewriteRule .* index.php
...instead of
RewriteRule .* lib/pxmlRouter.php
6: set correct url prefix for all resource urls generated by SResManager in rs.config.inc
...
'res.core.urls.prefix' => 'lib',
...
7: be sure index.php contains:
...
require_once('config.php');
require_once( constant('__PXML_ROOT__') . '/pxmlRouter.php');
...
8: be sure you clean the module cache from tmp\cache\.htmodules and .htmodules-log
- FIX: review of access rights for rs dirs in modules, it is beter handled now, we add where necessary read acces .htaccess files
- FIX: services gate reference was hardcoded in FormSkinnableFieldPartBase
- MOD: dislocation of lib dir of PXML, we try to have it in external project. So we changed packages scan alg. in SLoader
- FIX: class names and different config types for PHP 5.3 (namespaces sugar)
- FIX: sintax error
- FIX: refactor of paths, ids, and pxml4 port of widgets core
- FIX: refactored layout and relayout handlig pxml.widget.js
- MOD: widgetcontainerwidget use JSON for order of contained widgets
- MOD: refactor of widget names, and some processes in pxml.widget.js
- ADD: port of widgets to pxml4 with refator for new file location techniques and php standards, eachwidget become one PHP module with its manifest lib.php
for convention we use widget module root dir name xxx.wpkg
then there is dri structure:
- conf - dir which is put on php include path for eventual reusable configs (array style)
- pxml\widgets\\... - source code
- rs - widget private resources
4.3.13 14/02/2014
- FIX: subedit call must happen like 'editFormAction' so it will be handled with correct POST form commit fixed in xw.runtime.js
- FIX: XmlObjectSubModelRoot in dumpIntoDom was not considering New node from parent dom after new node replace (cause model and xml was not returning it), we added return clausule in all chain
XmlModel.php, XmlObjectSubModelRoot.php, Xml.php
- FIX: changed 'file_exists' with 'is_file' o 'is_dir' in:
SLoader.php
SResManager.php
ConfigXml.php
FileLock.php
NsCookieFile.php
PersistorFile.php
PropertyFile.php
RouterAdv.php
SslKeyStore.php
Template.php
UserSourceApache.php
UserSourceTomcat.php
UITemplate.php
xwDocFileUploadGate.php
4.3.12 13/02/2014
- MOD: Exception stack trace configuration moved from app.config.inc to other configuration file providing 'except' configuration.
- MOD: The search method executeQueryWithPageSize in XwDatabase.php is now extended in order to use specific title rule over the title per page already present.
PAY GREAT ATTENTION: REQUIRES 3diws VERSION 3.7.8 OR HIGHER!
4.3.11 13/02/2014
- FIX: performance fix in DataFmt static class, there were some congfig properties retrieval in continuous manner, like encoding of page
so we make it static, and we initialize it in SApplication constructor.
SApplication, DataFmt
4.3.10 12/02/2014
- MOD: added new posibility to ask model ( XmlModel ) for proper self schema node:
getSchemaDefByXp
added method addNewNodesFromXml in model
- MOD: we modify sub editing with standardized posibility to make subEdit from XmlObjectSubModelRoot directly, there is no necesity to have
model developed in deep in this position, if there is call for some chield field value using [] access operator (f.e. editing grid lines value)
we add new fake readonly field which simulate child field access usin xpath on xml and returning XmlObjectReadOnly
to have this we made some changes up and down in files : XmlField.php
XmlFieldType.php
XmlObject.php
XmlObjectReadOnly.php
XmlObjectSubModelRoot.php
- ADD: new fFormAction in XmlAutoEditService 'addPartWithNewSubEdit' - its needed for collection handling
- FIX: for PHP 5.3.strict validation of overloaded constructor XwDocument and XmlDocumentModel
- MOD: recfactor of navigTree.xsl
- MOD: refactor of Pxml.XwAutoEditNavigTreeSupport in xw.runtime.js
- MOD: updated jquery.scrollTo.js
4.3.9 11/02/2014
- FIX: work in progress on XmlModel optimisation (due to preformance problems on huge XML models)
4.3.8 10/02/2014
- FIX: SInputSanitizer - now handle also arrays
- FIX: XmlAutoeditService was saving model to soon, there were mdel modifications in draw process and those were lost
so we moved model save at the end.
4.3.7 06/02/2014
- ADD: conf-example in commons.pkg
- ADD: added new package stat.pkg just added fase with initial development burst
- ADD: getScriptBaseUrl in Pxml.js it will resolve some script base url
- FIX: AIterable in case of null set on non indexed place will do nothing (silently)
4.3.6 04/02/2014
- FIX: fixed missing default value from model part config XwDocumentHelper
4.3.5 31/01/2014
- MOD: Documnet view service hide page navigator in case of 'OUT OF SET' document
- MOD: Documnet view service in case of 'queryNoSel' we force 'OUT OF SET' document
- MOD: added new error message managed in case of reload of document
- FIX: incorect reference to Error class in catch clausules
fileUploadGate.php
pxmlIWxHttpGate.php
pxmlMediaUploadGate.php
pxmlPagesGate.php
xwDocFileUploadGate.php
SXwMultiDbManager.php
4.3.4 30/01/2014
- MOD: added possibility of specify more than one field for lookup in OnLookupEditRenderer and xmlEditing.xml
4.3.3 24/01/2014
- MOD: SqlDatabase for 4.3.0 changes in IDocumentSource
4.3.2 24/01/2014
- ADD: SInputSanitizer class for http input variables sanitisation, for eventual xss atacks
this sanitizer have its config, where various sanitization rules can be set: input-sanitizer.config.inc
'http.is.active' => true, // turn on/off sanitizer
'http.is.rules' => array (
/*
* rule for one input, if there is input variable 'fCmd' sanitizer will try to
* apply following rules on it's value.
*/
'fCmd' => array(
/*
* sanitisation method:
* BlackList - if match value will be set ''
* WhiteList - must match wl-type pattern otherwise ''
* Both
*/
'method' => SInputSanitizer::HTTP_REQUEST_FIELD_SANITIZE_METHOD_BW,
/*
* white list pattern
*/
'wl-type' => SInputSanitizer::HTTP_REQUEST_FILED_TYPE_STRNUM,
/*
* true => value will be lowerized
*/
'lowerise' => false,
/*
* true means html tags stripping
*/
'stripHtml' => true,
/*
* escape spetial chars
*/
'escape' => true
),
/*
* any command
*/
'*' => array(
'method' => SInputSanitizer::HTTP_REQUEST_FIELD_SANITIZE_METHOD_BL,
'wl-type' => 'SInputSanitizer::HTTP_REQUEST_FILED_TYPE_ANY',
'lowerise' => false,
'stripHtml' => false,
'escape' => false
)
4.3.1 23/01/2014
- MOD: XmlAutoEditService in finishExecute() added read of new document parameter editStructureXsl.
This parameter is optional and can been specified in document.config.inc for each document model.
In XwDocumentHelper added new method getEditStructureXsl() to retrive this new parameter.
4.3.0 16/01/2014
- MOD: XmlAutoEditService added new actions for 'SubEdit' and modified all actions which are
involved in sub editing
- MOD: Model classes modified for support xml injections during sub edits
XmlFieldType
XmlModel
XmlObject
- MOD: editing action hooks added in XmlDocumentEditActionBase.php
- MOD: allot of changes in editing for possibility to edit in separate editing instances
with underlaying model satacking
add:
IDocumentModel - All document models should implement this,
so we can standardise model stacking
IDocumentSource - All document sources (real and virtual) have to implement this, XwDatabase
was changed to implement this, and following classes too
SXwDatabaseFactory
XwDocument
XwDocumentAttachments
XwDocumentModel
XwVirtualDocumentSource
- MOD: performance thweak on how xml parse text into dom when it restores itself from session
4.2.0 15/01/2013
- Branch Stable_release_004_002_000
4.0.33.1 20/12/2013
- FIX: IE problem with relative paths handling bug when manipulating location of document.
4.0.33 17/12/2013
- FIX: browser history corupt tiny_mce loading sequence, fixed in pxml.edit.js and pxml.js
adding usage browser window base.
there is new function in Pxml => Pxml.getDocumentBase()
4.0.32 13/12/2013
- MOD: added all report system based on jasperreports
- REM: removed all jurasic report handling
- MOD: styles for checklist.manager.js functionality in xw/components.css
- FIX: some tweeks in checklist.manager.js
- FIX: report call in AttachmentService
- FIX: Fixed ReportManagerService for pxml4 (it was almost completaly refacttored)
- REM: all references to jurasic report management in TitlesService
- MOD: Adapt contstructor params APopupContent
- ADD: MessagePopuptContent
- FIX: reference return value XwDatabase::getReport
- MOD: made some performance tweeks in HxTagsTranslator
- FIX: User was not considering gorups for rights management in case of SUserProfileSourceFactory::UPST_NONE
4.0.31 12/12/2013
- ADD: add new metohod addNewNode to XmlObjectCollection: this bind and add a new DomNode to the collection
4.0.30 12/12/2013
- FIX: fixed problem in rendering lines after deleted lines in CollectionValuesGrid
4.0.29 10/12/2013
- MOD: XmlObjectCollection is now configurable via config element (child og grid element). It is possible to specify custom classes or default
collection component classes will be used. It is possible to pass these custom classes additional options arguments.
Internally XmlObjectCollection build and saves in its state these classes descriptors
- MOD CollectionValuesGrid now respect UIComponent constructor paradigm
- MOD: CollectionValuesGridHeader and CollectionValuesGridLine now respect UIComponent constructor paradigm that consist of
passing two arguemnt: the XmlObject and the array of options so it is possible to use to getCfgParam method to retrive
options and _Data protecte property to deal with XmlObject.
- MOD: XmlModel::includeXmlSchemaPart method, it now prepend to the included node grid element if present
4.0.28 06/12/2013
- ADD: possibility to reload userProfile User, UserProfileSourceLCPS
- ADD: added new command of LoginService : 'resetUserProfile' which is necesary for UserProfileReload
this comand generate $DA('userProfileReloaded'...
4.0.27 04/12/2013
- UPD: updated browser detection classes
- FIX: double label translation introduced like side effect in 4.0.23, so we rolled it back, eventual labels for actions must be translated first,
it cant be done in JsProxyAction
4.0.26 03/12/2013
- FIX: eclipse file handling fix
4.0.25 02/12/2013
- ADD: new editing action [setPartFromLookup], it is used for complex xml parts editing
it have also new hook : const ED_ACT_JUST_AFTER_COMPLEX_LOOKUP = 'justAfterComplexLookup';
- ADD: JsProxyMultiActionDefinition, for possibility to make more $DA in one
js action
- ADD: new kind of editing renderer: OnLookupEditRenderer, which can be used for
complex xml parts editing by just simple choose from lookup combo
it is composed by many configuration steps:
1: setup corectly editing schema for some XmlObject part
...
2: setup correct lookup handler in lookup.config.inc
'VocAnagrQueryLookup' => array(
//type of lookup
'type' => 'query', //[index|thesaurus|query|custom]
//modality how it will be started
'uiExecType' => 'action',//[action|auto]
//form of presentation
'uiShowType' => 'popup', //[popup|combo|list|radiogroup]
//content rendering params
'content' => array(
//content class
'contentClass' => 'pxml.commons.ui.component.lookup.LookupPopup',
'contentClass.list' => 'pxml.commons.ui.component.lookup.LookupPopupValueList',
'contentClass.value' => 'pxml.commons.ui.component.lookup.LookupPopupComplexValue',
//content class specific parameters
'contentParams' => array('useFilter' => true, 'useNavigator' => true, 'popupSkin' => $popupSkin, 'navigSkin' => $navigSkin,'filterSkin' => $filterSkin, 'valuesSkin' => $valuesSkin),
//class for data source of popup
'sourceClass' => 'pxml.ec.db.xw.lookup.VocAnagrQueryLookupSource',
'sourceClass.additionalParams' => array(
'extraQuery' => '[XML,/anagrafica_voce_rubrica/@tipo]="persona_giuridica"'
)
),
'forceDbId' => 'DB_ec_idx',
//target div for ajax response
'target' => 'popupDomDragDiv', //target for ajax response popups
), /* end
3: use or write that xml part view (readonly render class), in our example there is : pxml.xw.ui.component.edit.XslFormatedContent
which will draw xml part using xsl.
4: write correct lookup source, which must have correct editing event connection in action.
check 'pxml.ec.db.xw.lookup.VocAnagrQueryLookupSource' for example
- MOD: Added possibility to setup UI classes for lookup popup, for this we add
ILookupValue & ILookupValueList interface, and we modified system so it read UI classes from
lookup config descriptor:
'contentClass' => 'pxml.commons.ui.component.lookup.LookupPopup',
'contentClass.list' => 'pxml.commons.ui.component.lookup.LookupPopupValueList',
'contentClass.value' => 'pxml.commons.ui.component.lookup.LookupPopupComplexValue',
- MOD: LookupPopupValue rendering template will use already rendered text instead of draw call,
so we can overload this part more easily
- ADD: new overloadable method initDB($params) in XwQueryLookupSource
- FIX: &getNamespaces() function of XmlModel it need return reference
- ADD: injectXml(DOMNode $srcNode = null, Xml $srcDoc = null); method into
all IXmlBindable: XmlField, XmlObject, XmlObjectCollection, XmlObjectSkip
4.0.24 28/11/2013
- FIX: if there is translation of some label with fallback to the key
it went in exception anyway. fix done in SResManager
4.0.23 27/11/2013
- ADD: Iwx toolbars translation to xw..//i18/default.properties
- MOD: added possible action label translation JsProxyAction.php
- MOD: setWorkBuffered(false) will also close all eventual current buffers
- ADD: posibility to handle loadAttachment via fcgi
4.0.22 25/11/2013
- MOD: add support for checkbox fields in several functions of file pxml.edit.js. Checkbox fields have always come with
an hidden field which is the rela field that is persisted in db, but che checkbox is the field that generate events
and must be observed.
4.0.21 25/11/2013
- ADD: formating of alternative search content
- MOD: Help popup service should have parametric title
this may be set be config value in help.config.inc
as this: 'popupTitle' => 'preservation_info_title#uni'
- ADD: browser page title handling in browser history management, is i18 now
4.0.20 19/11/2013
- ADD: new method getResultByNameAsXml for XwStoredProcResponse
- ADD: new xwdoc.pkg under img/state
- FIX: fixed matricola variable handling ( moved to constructor )
- FIX: class name in templates attachment and titlesAndDoc
- FIX: restored missing call to parent constructor in Element class
- ADD: new element in xsl management, , this is equivalent to: SResManager->getNsRootUrl($type, $ns)
- ADD: new param in package manifests, 'forceLevel' => N, it give posibility force
package level in order of loading precedence, this is done in SLoader->getAvailableModules function
- FIX: autoloading chain, added fixed level for better loading order, commons set to -1
so its in front of others
4.0.19 15/11/2013
- FIX: addition uiAddCss fixed in SimpleCheckbox
- FIX: editing slaves after checkbox was not working correctly pxml.edit.js
- FIX: root editType attribute of schema forced to XmlObject::OET_FORM in XmlModel
4.0.18 12/11/2013
- FIX: navigation browser back button fix in xwdoc.runtime.js
4.0.17 07/11/2013
- FIX: in routing system route is action!!! so we use for page determination action instead of controller
- FIX: borwser history navigation trough events n titles
xw.runtime.js, xwdoc.runtime.js
- FIX: pxml4 class naming: XwDocPostItModel, PostItEditor
- FIX: for better browser history handling XwDocDocumnetViewService
- FIX: forceInputVar in case of bool had bug
- FIX: null use in rebind of key event in SortableSearchFormContent
- ADD: ignoring of browser history generation after editing redirects done in XmlAutoEditService
- FIX: various fixes for browser history done in
DocumentViewService, TitlesService
- ADD: getFields() getter in ATitlesItem
- ADD: fUdType = 'undef in TitlesItem like default param
- FIX: titlePage() was using _lastTitles before it has parsed it XwDatabase
4.0.16 05/11/2013
- ADD: LogInOut request handler
- FIX: for schemainclude after xp refactor
- FIX: RpaCcEditor fro pxml4
- FIX: fixed Img for pxml4
- FIX: AttachPrettyPhotoThumbnail for pxml4 new routed urls
- FIX: IwxTestLayout for pxml4
4.0.15 30/10/2013
- MOD: message 'Empty response!' from javascript can be omitted setting app.showErrorsStackTrace = false
- ADD: event isolation in ClosableTitledPanelSkin
- FIX: XwDatabase warning code in case of empty result
- ADD: alternative empty result for titles service, if it is configured, it is rendered instead of empty
result warning, its configured in titles_order.config.inc, by param:
'emptyResultContentClass' => 'pxml.xw.ui.component.EmptyResultTitlesContent',
- FIX: SearchFormService was loosing FormType state variable
- MOD: result of instant validation and its handling is moved to pxml.edit.js, validation service
emit $DA('instantValidationResult', {}) insted of direct modification of form
so page can handle result on its self
- FIX: in instant validation proces was missing some parameters
we add possibility to have harvest rule in them
so instant validation will be as this:
array(
'instantValidation' => array(
'enabled' => true,
'validationService' => 'IterSearchValidationService',
'harvest_rule' => "['f:fieldId_0', ..., 'f:fieldId_N']"
)
);
4.0.14 29/10/2013
- FIX: i18 strings overload was chaching to soon and it was not overloading some keys SResManager
4.0.13 29/10/2013
- ADD: redirectWithGet() function in Pxml.js
- ADD: possibility to replace history state, it is necessary for some
navigation situations: DocumentViewService, TitlesViewService
- FIX: custom browser styles identification in getBrowserDependentName() of SResmanager
- FIX: app.refDate comparing method, now it is rounded to 1 hour
- FIX: missing use in Calendar
- FIX: div.AutoComplete styles credits (l.casali egaf)
- FIX: pp maximise. Pxml.js
4.0.12 28/10/2013
- ADD: XwIndexLookupSourceNonRestrictive, its like XwIndexLookupSource, but it have one free line
- FIX: SApplication make new session just after successful destroy done
- FIX: Configurable when binds to config, in case of many canfigs with eventual leading/trailing
spaces in config name, did not found config, so we add trimming
- FIX: HxTagsTranslator calls xQuery with wrong list of namespaces, it must be an array
- FIX: custom data posting Pxml.js in redirectWithPost were doid all trough value attribute.
this is buggy in case of big data, so we use in such situation
- FIX: syntax sugar of PHP (overload function signatures) DocumentViewService, TitlesService
There were also missing exception throw (DocumentViewService)
4.0.11 25/10/2013
- FIX: exception thrown loading document was not thow again from DocumentViewService.php if not catched as erase doc
- FIX: bug with name of class ExecuteJsAction in SApplication
- MOD: we need to know if XwSelection is fake, so we can redone selection eventually
- MOD: modified jsCall generation in TitlesItem, moving it in overloadable protected method
getJsCallParams
- MOD: added SelectionId in navigation of DocumentViewService
- MOD: navigation and recover form external with order in TitlesService
- MOD: XwTreeService added SelectionID in navigation
- MOD: showLastTitles in xw.runtime.js
- MOD: removed useles returns in SUrlDispatcher
- FIX: SApplication didnt call everytime __destructor, so we add new mechanics to garantie
object shutdown proces, which is necessary for some session important operations, like db
serialisation and some others. The were added register_shutdown_function use with lambda which
uset instance and so the destructor is called, this should be tested in time.
- MOD: all connected situations to current date will use new SApplication's getCurrentTime()
method this method use or system time() or app.refDate configuration parameter, so we can run application
agains some specific date, and we can do debug, in case of current time not real
HtmlBody will render overlay div with warning message
4.0.10 23/10/2013
- ADD: new FormField layot class FormFieldLayoutJustField , it has nothing except field (it's good for custom fields)
- FIX: browser back navigation fix in case of direct url in state (no ajax state), there were no url jump done
- MOD: for better navgation we have to send to each TitleItem also selectionId, done in pxml\xw\ui\componet\TitleItemsContent
modified also TitlesItem
- MOD: continue on Browser history integration pxml\xw\service\ajax\DocumentViewService
- MOD: pxml\xw\ui\component\SearchFormActions made more overloadable, moving buttons creation into new method make(),
then we add new button mask value SFM_CLEAR
4.0.9 23/10/2013
- MOD: Saved into session the page ID in order to use it in various application points.
\lib\commons.pkg\pxml\commons\core\pages\Page.php
4.0.8 21/10/2013
- FIX: SimpleCheckBox was not corectly taking initial value from model
\pxml\commons\ui\component\form\SimpleCheckBox
\commons.pkg\rs\tmpl\forms.pxml
\pxml\xw\db\model\XmlModel
- ADD: html meta management
pxml\commons\core\pages\Page
pxml\commons\ui\component\HtmlHead
commons.pkg\rs\tmpl\html_base.pxml
- FIX: attachment downloading and database creation, performance fix.
pxml\xw\service\ajax\AttachmentService.php
pxml\xw\db\XwDatabase
4.0.7 17/11/2013
- FIX: prototype.js 1.7.1 there were not explicit test for null on element, in clone of function for IE8
- FIX: missing use of SOAP_Attachment in XwDatabase
- FIX: php5.3 namespaced function refference XmlObjectHtml
- FIX: fixed test for cast in XmlFormPart
4.0.6 16/11/2013
- ADD: new titles formating standardisation, titles item can have common handling
it start from pxml\xw\db\data\TitlesItem this class is base for all Titless row data classes in
xw subsystem it inherit from pxml\commons\db\ATitlesItem
- MOD: pxml\commons\db\data\DataFmt
- formatDateFromXW in case of empty input return empty output
- added public static function titleRowToArrayAssoc(\DOMNode $row, $columnSeparator = '|##|', $valueSeparator= '|#|')
its is used for title row processing
- ADD: posibility to have fixed app set in pxml\xw\db\helper\SXwTitlesHelper
- TODO: added totdo in pxml\xw\service\ajax\TitlesService
- FIX: row number forward to title row component pxml\xw\ui\component\titles\TitleItemsContent.php
4.0.5 16/11/2013
- FIX: added imagesUrlBase reference for XSL transformation of left edit navig tree in pxml\xw\service\ajax\XmlAutoEditService
used in navigTree.xsl
- FIX: comment in XmlObject, XmlObjectBool, XmlObjectHtml
- FIX: cfgField method of PXML was using monochar replace instead of global char replace
-pxml.js
- ADD: windows variable in config for javascript 'site.commons.rs.js.url'
in pxml\commons\ui\component\HtmlHead
use of this variable for tiny_mce scripts loading in pxml.edit.js
- FIX: class missing class
pxml\commons\core\xml\Xml - DOMText
4.0.4 15/11/2013
- FIX: we made many fixes working on navigation flow mantaining navigation state
for browser history
- we save current search form type in session pxml\xw\service\ajax\SearchFormService
- pxml.ajax.js
- FIX: fixed is_instance_of params
- FIX: set component data in pxml\xw\ui\component\TitlesContent
4.0.3 11/10/2013
- FIX: connection to pretty photo instead of lightview
- FIX: fixed non dinamic resources reference html_base.pxml
- FIX: ajax setup variables are passed as regular config, and no more as window globals HtmlHead.php
- MOD: getInputVar on SApplication accept $key in numeric form, so it will return Nth url part
- FIX: fixed Pxml.GlobalEventListener in pxml.runtime.js
- ADD: clear clearDomElement(id) function in pxml.js
- ADD: posibility to config how ajax call are generatet, it can be done by url routing or by
using query string (configured in app.config.inc)
all this is done in commons/pxml.ajax.js
- MOD: Management of browser history was moved on server side (means: event generation is initiated
on server side, by services configured in app.config.inc), There is possibility
to setup BHE (browser history event) with many params like condition and
others, this part is stil in devel progress
we modified files:
- DocumentViewService.php added overload getBrowserHistoryCallParams
- TitlesService.php added overload getBrowserHistoryCallParams
- AjaxResponse.php added server side mechanics and getBrowserHistoryCallParams
- updated native.history.js
- FIX: 'LoadSearchForm' service identification was renamed 'SearchFormService'
- FIX: complete refactor of URL routing, necesary for user browser back button handling
this fix was don in many files so we will not list them all here, instead look for coments with
version 4.0.3, we add Aura.router external library (it was adapted for PHP 5.3 cause original
Aura.router is for PHP 5.4
Some important notions:
- added new general pxml aplication gateway lib/pxmlRouter.php
- added main dirrector of all: SurlDispatcher
- idex.php - points to pxmlRouter now
- FIX: for possibility to send multiple search forms, pressing many times Enter fast hitting Key in line
This involve also Popup dialog stack management, We added posibility to handle focus on Modal dialog, and we also
adjust multiple hit bug. (we add attribute tabindex in Pupup div holder) This is done by sending it in
Div component constructor (so we added array of custom attributes to ..\generic\Elemnt components
- MOD: SPageManger use routing params for identify page
- FIX: removed fixed index.php referencing in MultiLoginWarning.php
- FIX: SConfigFactory was not correctly handlin explicit arrays used during config
generation
- ADD: pxml\commons\core\request\IRequestHandler
classes tree which are used in custom url routing requests handling
there is implementation for LoginRedirectWithTransparentLogOut
this class need array of options in construtor so we made exception
in getClassInstance for this classes tree
- MOD: AjaxServiceGate use routing params for identify fAction
- MOD: commons is dependat on Aura
4.0.2 07/10/2013
- FIX: exception text did not report correct class name in case of incorect db class in
pxml\xw\db\SXwDatabaseFactory
- FIX: all user profile sources had refactor of getProfile method
- FIX: fixed new user profilesource call and removed not used type ADLDAP
in pxml\commons\core\user\SUserProfileSourceFactory
- FIX: fixed user profile factoring end user params merging mechanics. There were missleading
mechanism with external param, used to avoid infinite recursion loops. THis was refactore
and its no more necesary send external params in $user->getParam call.
- pxml\commons\core\user\User
removed $_profileMerged variable (not used anymore)
added $_userProfileCallsLocked
added method loadProfile, this method handle userProfileSoure creating
this is done in synchronise dmanner
added maskRightsAndPrepareACL method for user rights filtering
removed mergeProfile this method was refactored in 2 above methods
removed getProfile not used method
4.0.1 03/10/2013
- FIX: removed serialisables handling, with pxml4 there is no more classes mapping necesary
due to compliance with PSR-0 we have autoloaders which do not need classes mapping.
- FIX: author string
- FIX: wrong class reference in templates it must be FCN.
- FIX: wrong characters [<>] in error message so exception dialog failed
- FIX: missing dir generation while cache is created
4.0.0 02/10/2013
- candidate released