Ralf Becker
fe22901d54
* Filemanager/eTemplate: fix for MyStylite bug #2495 : deleting files containing [ as first char deletes whole directory
...
added encoding of square brackets in eTemplate and improved etemplate_bo::(get|set|isset|unset)_array() to split indexes at ][ and not just [
2011-11-09 14:32:50 +00:00
Ralf Becker
bd616f8a34
merged some fixes from Trunk to quieten warnings in CalDAV:
...
- r36515: query_list(). initialize return value to array(), to allways return an array
- r36542: skip the empty (NULL) row
2011-11-06 09:49:53 +00:00
Nathan Gray
f6a28b7550
Remove ID, if already in title (eg Infolog)
2011-11-03 14:31:01 +00:00
Klaus Leithoff
85857cae6c
silence warning: bo_merge::get_links -> make third parameter optional, as the parent function called has this one as optional parameter too.
2011-10-31 11:24:13 +00:00
Nathan Gray
6da51ecbdb
* Add {{links}}, {{attachments}}, {{links_attachments}} placeholders for merging
2011-10-27 16:21:15 +00:00
Klaus Leithoff
bea7bba0b3
* import/export: fix for failed export on not set limit for nonadmins on standard export (handle empty export_limit since it will be casted to 0 on (int))
2011-10-12 10:40:51 +00:00
Klaus Leithoff
55dbf20c33
* calendar/addressbook/importexport/merge-print: introduction of a static function to fetch the export limit, and normalize the possible output: bo_merge::getExportLimit; apply new function to bo_mergen, nextmatch_widget, addressbook, calendar and importexport; introduction of an calendar export limit; introduction of hook to provide appspecific export_limit
2011-09-16 13:23:15 +00:00
Klaus Leithoff
9037a6c039
making 1st param for custumfield_widget construct (ui) optional, to avoid warning
2011-09-13 08:39:24 +00:00
Ralf Becker
1d6f9f0bfe
check if we can use the XSL extension, to not give a fatal error and rendering whole merge-print non-functional AND only keep tags, if XSL is available
2011-09-12 10:56:08 +00:00
Ralf Becker
7c381ba855
added "progress"(-bar) widget to differ from image and using it in templates
2011-09-08 19:03:44 +00:00
Ralf Becker
975a8ade09
* API/Calendar: allow to link to accounts and allow to select accounts as participants by searching them like contacts
2011-09-07 16:47:08 +00:00
Nathan Gray
3bdbeef5d6
Taming tidy - fixes extra line breaks, don't detect encoding.
2011-09-07 15:51:33 +00:00
Ralf Becker
9070d862ef
revert r36436 again, as it breaks showing lists and enumerations without styles
2011-09-06 09:28:05 +00:00
Ralf Becker
36093fbd2a
added missing semicolon to entity ​ and do an urldecode to get a nicer looking link
2011-09-06 07:42:08 +00:00
Ralf Becker
78b7a1442d
* Mergeprint uses tidy, if available, before atempting to convert html to office documents, requires now php-tidy
2011-09-06 06:27:07 +00:00
Ralf Becker
7540459b58
missing encoding of id
2011-09-06 06:23:54 +00:00
Ralf Becker
41c61e3979
backported from Nathan: Preserve text with styles inside lists, discard styles
2011-09-06 06:07:17 +00:00
Nathan Gray
cc80f295c6
Remove spans with no attributes, they're invisible and can cause invalid XML with linebreaks
2011-09-05 17:11:20 +00:00
Klaus Leithoff
a3b17caa5f
* impportexport/document merge: better control of exportlimits, you are now able to exempt groups or users from any exportlimits set (backport of nathans work, with enhancements from ralf)
2011-09-01 14:32:26 +00:00
Ralf Becker
bf4fcb159e
* richtext custom-fields
2011-08-30 19:19:56 +00:00
Nathan Gray
98ec62d0e2
* Translate basic HTML formatting (bold, underline, cursive, text & background color, bullets & lists, fonts, size) into target document's formatting when merging into a template. Works for odt, docx and some xml.
2011-08-30 16:08:34 +00:00
Ralf Becker
8d4bd41736
allow to call a function instead of a static helptext
2011-08-27 18:36:16 +00:00
Nathan Gray
1cddecb832
- Fix missing formatting in xml/word documents
...
- some changes in bullets, maybe avoid error in docx documents
2011-08-22 22:30:14 +00:00
Nathan Gray
e8e5a3066a
Simple date/time, still needs to know user format
2011-08-22 18:18:29 +00:00
Ralf Becker
b65c87ec2c
added all existing select-* widgets
2011-08-22 16:56:45 +00:00
Andreas Stöckel
c5acfe93bf
Added 'overflow' attribute, got infolog.edit loading
2011-08-22 16:37:04 +00:00
Andreas Stöckel
4869ca9a49
Implemented hiding grid columns and rows, fixed bug with et2_template::isInTree returning false in the wrong places and thus not all values being transmitted back to the server
2011-08-22 15:58:47 +00:00
Andreas Stöckel
445c04dce1
Added onclick handler to baseWidget and change handler to inputWidget
2011-08-22 14:38:05 +00:00
Nathan Gray
0264b70a0b
Silence warning when export exception is not set
2011-08-22 14:20:44 +00:00
Klaus Leithoff
23ec5634b3
* API: taking care of sorting AND filtering by customfields with names containing whitespace; (best way to deal with this issue, is not using whitespace in your customfield names at all)
2011-08-22 13:12:32 +00:00
Klaus Leithoff
b76da493de
* API: taking care of sorting AND filtering by customfields with names containing whitespace; (best way to deal with this issue, is not using whitespace in your customfield names at all)
2011-08-22 13:08:19 +00:00
Andreas Stöckel
1db6a7aaf5
Added support for the 'class' attribute
2011-08-22 11:16:37 +00:00
Andreas Stöckel
05eb7d0f54
Added 'activateLinks' ability to description tags
2011-08-22 10:50:55 +00:00
Andreas Stöckel
711b1c4886
Labeles are now generated as 'label' tags, basic implementation of the 'for' attribute, sel_options can now contain entries with 'title' and 'label'
2011-08-22 08:58:20 +00:00
Ralf Becker
31ab3d9d75
use html_entity_decode, as we add options with .text(), it can't be entities, but php knows no string literals with utf-8
2011-08-22 07:46:38 +00:00
Ralf Becker
0aa128b53e
Loading translations like other javascript files:
...
setting headers to allow browser to cache the file until it's etag containing the creationdates of the used langfiles changes
--> et2 can now use egw_lang object to translate labels, options, ...
2011-08-21 20:09:14 +00:00
Ralf Becker
7b89481b76
fixed typo giving fatal error with template infolog.edit
2011-08-21 17:13:08 +00:00
Andreas Stöckel
e3bea68512
Added XET file for label test
2011-08-21 15:22:28 +00:00
Andreas Stöckel
8bc726e1b8
Implemented 'label' property for input widgets (nathans code didn't work anymore), renamed 'parseArrayMgrAttrs' to 'transformAttributes'
2011-08-21 15:22:00 +00:00
Ralf Becker
db9434d8e6
added radio validation to etemplate_widget_checkbox, as they are nearly identical
2011-08-21 14:03:52 +00:00
Ralf Becker
5bc3844be8
fixed typo
2011-08-21 14:02:31 +00:00
Ralf Becker
7c5cb7e04b
validator for checkbox, not yet tested because of missing clientside
2011-08-21 13:47:45 +00:00
Ralf Becker
74fabe9994
removed implemented todo
2011-08-21 13:46:21 +00:00
Ralf Becker
32ea28a59c
fixed copy-n-paste typo
2011-08-21 13:45:55 +00:00
Andreas Stöckel
09bc77426c
Selectbox now allows 'option'-widgets inside of it, added hrule widget, added support for 'buttononly'
2011-08-21 13:24:20 +00:00
Andreas Stöckel
4ad303529c
Added forgotten tab header
2011-08-21 13:15:25 +00:00
Ralf Becker
76d5a57b8c
added validator for htmlarea, not yet tested, as it is not yet implemented on clientside
2011-08-21 13:01:10 +00:00
Ralf Becker
ec58f52b62
implemented disabled columns
2011-08-21 12:43:02 +00:00
Andreas Stöckel
0fdf434321
Got JS handlers working again
2011-08-21 12:23:56 +00:00
Ralf Becker
c4293ba3bc
honor disabled attribute in validation for widgets including grid rows, but not yet grid columns
2011-08-21 11:55:56 +00:00
Ralf Becker
7916e86880
method to translate options incl. optionial title
2011-08-21 11:38:01 +00:00
Ralf Becker
e0624ebe89
removed set_(row|column)_attributes and disable_(row|column) method, which modifies template on run-time, it was only used internally by etemplate
2011-08-21 09:14:58 +00:00
Andreas Stöckel
aa07a39a2e
Don't allow children for the menupopup
2011-08-21 08:59:12 +00:00
Andreas Stöckel
127e629eef
Adapted selectbox widget code to new etemplate2 js core scheme
2011-08-21 08:48:53 +00:00
Andreas Stöckel
7c7a8230cf
Added basic approach to have selectbox widget running again (probably not fully working yet)
2011-08-20 18:34:14 +00:00
Ralf Becker
e92087df31
- new validator for selectboxes (menupopup)
...
- also used currently to supply options for predefined selectboxes (eg. select-cat), need to discuss if we want to fetch these per ajax
- new widget method run, which runs a given method on all widgets (and children) supporting it, eg. used now for validate
2011-08-20 10:27:38 +00:00
Andreas Stöckel
fcff01e3cc
Fixed textbox cols/rows always being set to 1
2011-08-19 16:39:28 +00:00
Andreas Stöckel
5af5594f60
Major update of the et2_widget internal structure. The following changes were made:
...
- All attributes of the widgets are now parsed from XML before the widget itself is created.
These attributes plus all default values are then added to an associative array. The associative array is passed as second parameter to the init function of et2_widget, but is also available as this.options *after* the constructor of the et2_widget baseclass has been called.
The et2_widget constructor also calls a function parseArrayMgrAttrs(_attrs) - in this function widget implementations can read the values from e.g. the content and validation_errors array and merge it into the given _attrs associative array.
After the complete internal widgettree is completely loaded and created the "loadingFinished" function gets called and invokes all given setter functions. After that it "glues" the DOM tree together. This should also (I didn't measure it) be a bit faster than before, when the DOM-Tree was created on the fly.
Please have a look at the changes of the et2_textbox widget to see how this affects writing widgets.
Note: The "id" property is copied to the object scope on the top of the et2_widget constructor.
- When widgets are cloned the "options" array gets passed along to the newly created widget. This means that changes made on the widgets during runtime are not automatically copied to the clone - as this didn't happen anyhow it is not a really disadvantage.
On the other side there should be no difference between widgets directly inside the "overlay" xet tag and widgets which are inside instanciated templates.
- The selbox widget doesn't work anymore - it relied on the loadAttributes function which isn't available anymore. et2_selbox should use the parseArrayMgrAttrs function to access
- I've commented out some of the "validator"-code in etemplate2.js as it created some error messages when destroying the widget tree.
2011-08-19 16:00:44 +00:00
Ralf Becker
30ed6a8ab7
- added legacy-options parsing and defintions for currently implemented widgets
...
- added more server-side debuging:
* etemplate_widget_template class can be called via url and displays parsed xml, eg:
http://localhost/egroupware/etemplate/inc/class.etemplate_widget_template.inc.php?name=infolog.edit
This is different from directly calling the xet file, as it show what got parsed and how:
http://localhost/egroupware/infolog/templates/default/edit.xet
* etemplate_new class can be called via url to render an arbitrary template, eg:
http://localhost/egroupware/etemplate/inc/class.etemplate_new.inc.php?name=timesheet.edit
Thought not all are already rendered correct, eg. infolog.edit is not:
http://localhost/egroupware/etemplate/inc/class.etemplate_new.inc.php?name=infolog.edit
2011-08-19 08:22:19 +00:00
Ralf Becker
107b12abcd
- template references can contain attributes, in this case we have to clone the template and set them
...
- optional template namespace is in "content" attribute
- ability to unset validation messages
2011-08-19 06:30:06 +00:00
Ralf Becker
b57b633944
ability to unset validation messages
2011-08-19 06:21:46 +00:00
Ralf Becker
a488b67f99
serverside validation for textbox and button
2011-08-18 21:56:37 +00:00
Ralf Becker
d095250d85
read and parse widgets on serverside
2011-08-18 18:08:40 +00:00
Nathan Gray
5e54d6b12b
Add basic radio, readonly version of checkbox/radio
2011-08-18 17:34:01 +00:00
Nathan Gray
3c5f14e960
Try to keep whitespace when splitting up styles
2011-08-18 16:42:43 +00:00
Nathan Gray
341403d0ca
Attempt to fix broken bullets, doubled numbers
2011-08-18 16:09:15 +00:00
Ralf Becker
d32ce66d91
fixed grid in cf widget displays border, if options are set
2011-08-18 09:25:14 +00:00
Ralf Becker
d6509ad506
fixed grid in cf widget displays border, if options are set
2011-08-18 09:22:59 +00:00
Ralf Becker
43e9cb2126
fixed grid in cf widget displays border, if options are set
2011-08-18 09:21:30 +00:00
Ralf Becker
b892149294
fixed grid in cf widget displays border, if options are set
2011-08-18 09:21:03 +00:00
Nathan Gray
fb43e96aeb
Use getInputNode() instead of inconsistant variable for default label implementation
2011-08-17 23:26:01 +00:00
Nathan Gray
9f3551cc7a
PHP test page, works inside eGW + validation test
2011-08-17 23:06:25 +00:00
Nathan Gray
e76cf6eab2
- Add labels to input widgets
...
- Add row & col properties to textarea
2011-08-17 22:56:49 +00:00
Nathan Gray
03d549bab9
Add validation (basic client & server side)
2011-08-17 21:36:08 +00:00
Nathan Gray
c409e8d73e
Fix typo breaking selectbox options
2011-08-17 21:32:38 +00:00
Nathan Gray
ba5fee777c
Basic widgets xml file
2011-08-17 19:46:19 +00:00
Nathan Gray
379b05b39f
Get empty label / row count legacy option working
2011-08-17 17:50:15 +00:00
Nathan Gray
abf37487b8
Fix typo
2011-08-17 17:48:39 +00:00
Ralf Becker
d20c38b3d0
added richtext customfield
2011-08-17 16:34:09 +00:00
Nathan Gray
8f5f334762
Only process HTML inside Word xml documents
2011-08-17 15:47:05 +00:00
Nathan Gray
16bafa78b8
Implement export restriction exception for given users/groups in apps
2011-08-17 15:38:56 +00:00
Nathan Gray
2a815be3d3
Process xml as if it were a MSOffice document
2011-08-17 14:47:17 +00:00
Ralf Becker
7cbff78854
config for export limit excepted users/groups, need backend work from nathan
2011-08-17 09:36:51 +00:00
Andreas Stöckel
2234cc3413
Added very simple but working implementation of the tabs widget
2011-08-17 09:07:09 +00:00
Nathan Gray
ea8d70136e
Implement labelplaceholder for OO.o files
2011-08-16 23:07:44 +00:00
Nathan Gray
e792130479
Stop errors from missing _data and missing array managers
2011-08-16 21:18:26 +00:00
Nathan Gray
e981e7911f
Get option value from content, add empty label
2011-08-16 21:18:06 +00:00
Ralf Becker
146c8fbc80
disable initial namespace/cname, as we probably wont use it and it gives a fatal error currently
2011-08-16 20:43:18 +00:00
Ralf Becker
fae753a551
added hiearchical names in widget id's like 'button[save]'
2011-08-16 20:32:18 +00:00
Nathan Gray
f0db6211b9
Put options in selectbox
2011-08-16 20:32:13 +00:00
Ralf Becker
510ce7c159
- using etemplate_request object and a etemplate_exec_id
...
- "processing" the submit on serverside (no validation yet)
--> content returned by ajax call is not an hiearchical array: eg. "button[save]" => 1, instead of "button" => array("save" => 1)
- new call to etemplate_new::exec() is send back via new JSON generic et2_load response
--> how do we handle output of callback: a) debug output, eg. echos and b) echo "<html><head><script>window.close();</script></head></html>"; exit;
2011-08-16 19:40:48 +00:00
Nathan Gray
11ccd9c057
Check that value is a string before treating it as one
2011-08-16 19:01:45 +00:00
Nathan Gray
df2869c07f
Add simple checkbox, missing ID property
2011-08-16 18:42:17 +00:00
Andreas Stöckel
63d0baf497
Added event listener system to etemplate2
2011-08-16 18:18:18 +00:00
Nathan Gray
03b4704685
Add basic implementation of numeric (int & float) and selectbox widgets
2011-08-16 17:02:09 +00:00
Andreas Stöckel
fb8ef99c0b
Added align property and working hbox/vbox implementation
2011-08-16 16:46:22 +00:00
Nathan Gray
a6ebfff827
Fix infinite loop
2011-08-16 16:44:21 +00:00
Andreas Stöckel
fef5ad8ebd
Improved invalde type handling
2011-08-16 13:45:41 +00:00
Andreas Stöckel
786ec9220c
Added widget for html-XET tag and added forgotten et2_styles.js
2011-08-16 13:12:39 +00:00
Andreas Stöckel
40a11bdb4f
Added widget for 'styles' XET tag
2011-08-16 12:56:55 +00:00