Commit Graph

2511 Commits

Author SHA1 Message Date
Ralf Becker
809b5f3dac fixing the fix ..., good that new etemplate2 always uses csv_explode 2012-03-17 14:18:30 +00:00
Ralf Becker
ffccc00439 use csv_split on options of text field, to allow to enclose preg in quote to allow comma in it 2012-03-17 13:41:34 +00:00
Nathan Gray
59f7a93cbb Prevent double-encoding on nm categories 2012-03-16 14:52:33 +00:00
Nathan Gray
f88776416c Make sure headers is defined, even if no templates specified 2012-03-15 23:16:41 +00:00
Nathan Gray
f17860431a Don't try to split numbers 2012-03-15 23:15:01 +00:00
Nathan Gray
3a865977ff Pretty checkboxed multi-select widget 2012-03-15 22:57:55 +00:00
Nathan Gray
ea77d9704e If template has a tree & a selectbox with the same ID (addressbook.edit), tree can play nice with the selectbox and provide compatible data so it still works 2012-03-15 22:35:00 +00:00
Nathan Gray
ffe2f1677b Don't overwrite current option (set from explicit attribute or content) with a legacy option 2012-03-15 21:56:19 +00:00
Ralf Becker
33e750d663 fixed formatting with 8 space instead tab and EGroupware name 2012-03-15 08:29:45 +00:00
Nathan Gray
570b933331 Restructure nm header to be a real widget, add header templates - not quite right, but they're there 2012-03-14 22:57:54 +00:00
Nathan Gray
0aa4c66803 Don't proxy template, just don't load it until asked for 2012-03-14 21:27:23 +00:00
Nathan Gray
e5b4bcfe7f Add selectAccount_ro to handle ajax user names 2012-03-14 19:02:28 +00:00
Nathan Gray
45751ff042 Make DOM node stored in closure, not jQuery selection 2012-03-14 19:00:38 +00:00
Ralf Becker
2bbb3b07e9 using new egw.langRequire to load translations only once (per top-window load) 2012-03-14 12:10:31 +00:00
Ralf Becker
19b3120be6 fixed "PHP Fatal error: Unsupported operand types in /opt/local/apache2/htdocs/egroupware/etemplate/inc/class.etemplate_widget_projectmanager.inc.php on line 56" 2012-03-14 11:32:28 +00:00
Nathan Gray
14d593d600 Send category options even if read-only 2012-03-13 23:10:27 +00:00
Nathan Gray
1aa7459025 Set options to empty array even if there's no type (avoids type errors) 2012-03-13 23:09:16 +00:00
Nathan Gray
6426b2d2db Get selectboxes inside datagrid working 2012-03-13 23:02:21 +00:00
Nathan Gray
5284844780 Make selectboxes appear in the correct position (sort of) inside hboxes 2012-03-13 22:16:08 +00:00
Nathan Gray
ea084fb41f Don't show duration if the field is empty for the row 2012-03-13 19:38:48 +00:00
Nathan Gray
53d2d9641b - Make progress inline
- Different sizing for date fields
2012-03-13 18:03:53 +00:00
Nathan Gray
743aa2935e Get custom fields down to only 1 each 2012-03-13 18:01:55 +00:00
Nathan Gray
36688173a4 Make sure sel_options is an array 2012-03-13 16:25:23 +00:00
Nathan Gray
7d781a56a4 Don't try to go into a null entry 2012-03-13 16:19:22 +00:00
Ralf Becker
7f45afcc82 fixed no more notifications send, if notification of group-members is NOT enabled 2012-03-13 15:47:55 +00:00
Nathan Gray
e09a3fac51 Give a warning about blank first row and stop - not sure of the solution, but this at least shows something 2012-03-13 15:42:46 +00:00
Ralf Becker
e2a662289b fixed nm_active_link, to also active links, not only onclick handlers 2012-03-13 11:08:02 +00:00
Nathan Gray
74b4fe6816 Fix progress widget inside datagrid 2012-03-12 23:18:46 +00:00
Nathan Gray
f26822c302 Slightly more efficient link display in datagrid; treat false and null titles as empty string 2012-03-12 22:32:13 +00:00
Nathan Gray
91c4a4de81 Fix missing delimiter, silence Invalid argument warning 2012-03-12 22:29:51 +00:00
Nathan Gray
1d74169848 Add time picker popup 2012-03-12 21:20:46 +00:00
Nathan Gray
268be2c8b9 Make button onclick work inside nextmatch again 2012-03-12 18:25:36 +00:00
Nathan Gray
8820bf0acf Whoops - revert accidental commit 2012-03-12 17:58:55 +00:00
Nathan Gray
c2d1edc754 Make button onclick work inside nextmatch again 2012-03-12 17:55:52 +00:00
Andreas Stöckel
3287ac7286 Fixed typo 2012-03-12 13:52:32 +00:00
Andreas Stöckel
a9967f678d Displaying linebreaks for description tags 2012-03-12 13:41:10 +00:00
Andreas Stöckel
28aeb06238 Fixed problem with class not being set correctly 2012-03-12 13:19:13 +00:00
Andreas Stöckel
162bb12d19 Make grid resizing work again 2012-03-12 12:17:07 +00:00
Andreas Stöckel
97080a676a Reverted changes to accidently commited class.etemplate.inc.php 2012-03-12 12:08:37 +00:00
Andreas Stöckel
dc017ed889 Now again using a local etemplate2 instance on the client 2012-03-12 12:05:14 +00:00
Ralf Becker
3a4274af02 added show method calling etemplate_old::show(), so calendar keeps working after renaming etemplate --> etemplate_old and etemplate_new --> etemplate 2012-03-12 08:42:05 +00:00
Nathan Gray
f512d1efae Move calendar icon inside input box 2012-03-09 18:46:29 +00:00
Andreas Stöckel
d486e50a57 phpgwapi:
* Changed way of how "webserverUrl" gets set - any type of data can now be
	  injected into the egw object by creating an object with the data and an
	  entry "prefsOnly" set to true. This allows to ensure, that "webserverUrl"
	  is the first thing that is being set in the egw object (as needed when
	  including new JS/CSS files at runtime)

jsapi:
	* Fixed including JS/CSS files at runtime in other windows than the root
	  window
	* Added "ready" function/module, which provides an alternative to the
	  $j("ready") function. The ready module provides the functionality to
	  postpone calling the "ready" until certain events happened.
	* using jQuery calendar object instead of jscalendar in the calendar
	  function.
	* added "jquery" module which takes care of including all jQuery modules
	  in all windows
	* added possibility for modules to update constants using the "constant"
	  function.
	* added possibility for modules to access certain other modules using
	  the "module" function

etemplate:
	* Using new egw(window).ready function to build the template first if
	  loading has finished.
2012-03-09 15:32:29 +00:00
Ralf Becker
f467572bd4 using mime-registry for link-widget "link-list" and "link-string" too 2012-03-09 07:39:36 +00:00
Nathan Gray
c3fd6f685f Don't hard-code preferences 2012-03-09 00:44:28 +00:00
Nathan Gray
73817441cf jQuery-UI datepicker as date selection popup 2012-03-09 00:36:35 +00:00
Nathan Gray
8cd853fa36 Bring external test a little more up to date, at least so it sort of works 2012-03-09 00:35:24 +00:00
Ralf Becker
dd8a5cf29e * Filemanager/FMail/Calendar: allow to open .eml and .ics files from filemanager in fmail or calendar (infrastructure for apps to register which mime-types they can open) 2012-03-08 18:43:40 +00:00
Nathan Gray
96271ea210 Change image buttons from using a child image widget to using the img node as the button's DOM node 2012-03-08 17:10:26 +00:00
Nathan Gray
2df89f73ab Remove redundant code - api handles this 2012-03-08 16:57:23 +00:00
Nathan Gray
e1f8411253 Add tree to list 2012-03-08 16:55:12 +00:00
Andreas Stöckel
df06f6657c Now always including egw and etemplate2 javascript code if we are in the top window 2012-03-08 14:05:00 +00:00
Nathan Gray
c09d09a8c1 Fix some problems with dates set with string values - they were parsed as UTC, but server sends user times 2012-03-08 00:20:04 +00:00
Nathan Gray
0effc3a229 Tree now looks like it works 2012-03-07 23:17:49 +00:00
Nathan Gray
9a0948f6fb More detailed error messages 2012-03-07 22:55:02 +00:00
Andreas Stöckel
c0db2e36a9 Fixed a lot of problems regarding centralized JavaScript code; et2_dataview_view_resizeable is current WIP; now building etemplate2 DOM-Tree to a DocumentFragment first, which brings a significant performance gain 2012-03-07 15:33:21 +00:00
Nathan Gray
548ac686d8 Work in progress on tree 2012-03-07 00:30:47 +00:00
Andreas Stöckel
69c7697e61 Fixed problem with infolog-image 'not-started' not found in grid; causes new problem with some buttons being displayed twice (caused by this.image=null in et2_widget_button.js::180) 2012-03-06 16:29:18 +00:00
Andreas Stöckel
e4ed4399cf Attempt of fixing legacy JavaScript functions, only tested for simple cases 2012-03-06 15:26:11 +00:00
Andreas Stöckel
049cbd88dc Now using the etemplate code from the root instance (etemplate2.js acts as a egw api plugin); fixed egw.json plugins; fixed problem with 'instanceof Object', which does not work when sharing code over multiple windows 2012-03-06 13:22:01 +00:00
Andreas Stöckel
130dc87e83 Concatenated dhtmlxmenu.js and dhtmlxmenu_ext.js to one file, to stop the message 'dhtmlxmenu_ext.js required' 2012-03-06 09:35:54 +00:00
Nathan Gray
68d8b02525 Remove accidentally committed debug 2012-03-05 21:43:03 +00:00
Nathan Gray
ac01014a14 Translate select box options (including empty selection text) using proper egw object 2012-03-05 21:40:44 +00:00
Nathan Gray
731b8cf460 Translate selectbox options 2012-03-05 21:07:02 +00:00
Nathan Gray
3bac2f8cd3 Add integer type, alias of int tag 2012-03-05 16:53:52 +00:00
Andreas Stöckel
65ca8b0c1b Using new egw json api for sending submits 2012-03-05 15:02:32 +00:00
Andreas Stöckel
d310b14ecf Client side API now supports modules which are instanciated per application or per window; removed et2_debug function from et2_core_common, now using corresponding API function. 2012-03-05 13:07:38 +00:00
Ralf Becker
40c87abcb9 fixes for PHP 5.4 warnings and strict warnings, thought disabled E_STRICT for now, because of various strict warnings in working code, which could not be easy fixed in all areas (see comment in phpgwapi/inc/functions.inc.php) 2012-03-04 14:01:13 +00:00
Ralf Becker
f676a23821 fixes for PHP 5.4 warnings and strict warnings, thought disabled E_STRICT for now, because of various strict warnings in working code, which could not be easy fixed in all areas (see comment in phpgwapi/inc/functions.inc.php) 2012-03-04 13:33:10 +00:00
Nathan Gray
bade774bfa Fix visible   in all selectboxes - prevent double encoding 2012-03-02 22:02:26 +00:00
Nathan Gray
119aa1c121 Fix visible   in sub-category names 2012-03-02 19:38:31 +00:00
Nathan Gray
8d523cad93 Fix [popup] submission in et2 2012-03-02 18:35:49 +00:00
Andreas Stöckel
72214630b1 Fixed problem in et2_widget_link, referencing to this in event handlers 2012-03-02 12:41:29 +00:00
Andreas Stöckel
ecad6a0d01 Fixed translation of description widgets 2012-03-02 12:13:20 +00:00
Andreas Stöckel
14e6ceecb6 Integrated application specifig egw api into etemplate2 code 2012-03-02 10:44:56 +00:00
Ralf Becker
1c386e2d6b new method preferences->default_prefs($app=null,$name=null) to access default prefs, taking into account forced preferences 2012-03-01 18:03:13 +00:00
Andreas Stöckel
4440b4cd02 Fixed problem with rebuilding the template after a submit not working correctly 2012-03-01 10:13:12 +00:00
Nathan Gray
9feb7e22bf Avoid fatal error breaking nm if fields is null 2012-02-28 01:00:50 +00:00
Nathan Gray
dc6da791f4 Add placeholder [links|attachments|links_attachments]/link to get a download url for attachments 2012-02-28 00:23:41 +00:00
Nathan Gray
058553b8d9 - Fix last[-1] comments
- Show custom notification / signature checkboxes for all queues too
- Handle message / signature as HTML, not text
- When merging HTML, keep the same tags as OO.o & word documents
2012-02-27 21:34:34 +00:00
Frédéric Erpicum
afa20726f8 * ProjectManager - Filter elements by app 2012-02-27 20:20:42 +00:00
Frédéric Erpicum
354e344a1c * Infolog - Preferences to receive notification as member of owner group of Infolog Type 2012-02-27 14:59:00 +00:00
Nathan Gray
9caec6fffb Fix for empty spreadsheet dates in XML & OO.o getting a date anyway 2012-02-24 23:29:58 +00:00
Ralf Becker
bbeed5c3bb white-space: nowrap for table in date-widget 2012-02-23 13:39:24 +00:00
Ralf Becker
980768c443 * Notifications: fixed not correctly reset timezone after notifying users from other timezones 2012-02-22 12:32:18 +00:00
Nathan Gray
2b39a7a059 Fix spreadsheet date/time formatting issue - incorrect parsing of user's time 2012-02-20 16:15:18 +00:00
Ralf Becker
7e0df9eb55 allow to force tooltip for help messages by prepending a pipe "|" character 2012-02-19 13:54:57 +00:00
Ralf Becker
253f98d315 Restore all eTemplates from distirbution file via eTemplate editor (no need to touch distribution file or fiddle with the database) 2012-02-15 14:51:58 +00:00
Nathan Gray
1624c37dc7 Fix typo in Excel date processing 2012-02-13 19:23:17 +00:00
Nathan Gray
4f669300a4 When merging into a spreadsheet document, convert dates into SS dates 2012-02-13 18:59:00 +00:00
Ralf Becker
1f76e0c191 fixed several small issues around CardDAV and history logging in addressbook (dont log not set custom fields as there are not stored and therefore not changed) 2012-02-10 21:29:50 +00:00
Nathan Gray
73c1ae8617 Use double quotes for onchange to match everything else 2012-02-02 20:22:09 +00:00
Ralf Becker
5433778fc5 fix for integer input with negative length, to get readonly input field, fixes html5 not setting size/width commit 2012-02-01 17:30:28 +00:00
Nathan Gray
3874ec6084 When merging styles, handle <b>, <i> in addition to <strong>,<em> 2012-02-01 15:37:49 +00:00
Nathan Gray
b8d9b748ac - Re-arrange HTML tag order to account for simplistic newline handling (broke nested tags)
- If unable to load/parse content after trying to convert HTML styles into target document styles, fall back and try again, but strip all tags this time.
2012-02-01 00:03:31 +00:00
Ralf Becker
c3cadea4f4 storing unsupported (valarm-)components like unsupported (X-)properties 2012-01-31 01:02:21 +00:00
Ralf Becker
d7a953a60c fixed fatal error calling widgetExists on a non-object 2012-01-30 22:53:48 +00:00
Ralf Becker
fb16ff842d InfoLog/CalDAV: store unsupported iCal properties like custom fields incl. history logging, thought they are not displayed unless you explicitly add a custom field from them (prefixed with one #) 2012-01-29 22:34:43 +00:00
Ralf Becker
d972804aff * Addressbook: preference to open EMail addresses in external mail program, even if user has access to EMail app 2012-01-13 05:22:18 +00:00
Ralf Becker
b34d6f9d35 automatic conversation of not set DB timestamps returned by MySQL as "0000-00-00 00:00:00" to null 2012-01-11 01:03:45 +00:00
Nathan Gray
f76b1ad858 Use opener.egw_appWindowOpen() if in a popup to open links in main window, if the app doesn't want a popup 2012-01-09 20:28:44 +00:00
Ralf Becker
043b895a04 ability to open nm_action=location in a given targetapp tab, plus documentation 2012-01-07 23:02:29 +00:00
Nathan Gray
af2e743a83 Add parameter to exclude certain entries 2012-01-06 17:28:40 +00:00
Klaus Leithoff
b79af79410 remove felamimail from static app_list in egw_link, as felamimail is implementing search_link; gather only apps for link that implement query and title 2012-01-06 10:11:16 +00:00
Nathan Gray
2e9866bab9 Add mergeprint tag for links to a specified application: links/appname 2012-01-05 17:43:44 +00:00
Nathan Gray
32b1cc2a29 Limit custom field app entry possibilities to apps that support query and title, which are required for custom field to work properly 2012-01-05 17:04:54 +00:00
Ralf Becker
a34e9b8431 html5 input type=nummeric seems to ignore size, setting a width instead 2012-01-05 01:42:06 +00:00
Nathan Gray
194edcd349 Another attempt to fix lost infolog custom fields in addressbook view when changing nm filters 2012-01-04 22:01:15 +00:00
Klaus Leithoff
2e8ec69619 API/customfields: fix for link-entry validation problems caused by unmotivated/empty default data. This may require a review. 2012-01-03 16:34:02 +00:00
Klaus Leithoff
ed9f079fda * API/customfields: fix for Stylite Ticket#2629 ->Mandatory custom field not saved<- fix for customfields (if mandatory) where not saved on first attempt, after failed formvalidation. 2012-01-03 14:46:06 +00:00
Nathan Gray
7d5500d1dd If hooked, keep app in extension_data to persist across etemplate loops. Fixes lost infolog custom fields in addressbook view when changing nm filters
- Attempt 2, see r36956.
2011-12-23 16:32:15 +00:00
Nathan Gray
a5e904faa1 Revert accidentally commited devel stuff 2011-12-23 16:29:09 +00:00
Nathan Gray
587418fca2 If hooked, keep app in extension_data to persist across etemplate loops. Fixes lost infolog custom fields in addressbook view when changing nm filters
- Attempt 2, see r36788.
2011-12-23 16:27:41 +00:00
Klaus Leithoff
d37ee80161 mending Warnings: Cannot use a scalar value as an array 2011-12-20 15:57:03 +00:00
Nathan Gray
f8ec5c9f40 Revert 37361, didn't solve the issue 2011-12-19 16:13:51 +00:00
Nathan Gray
2eee7a5119 Fix missing >< when merging to XML, caused by double escaping 2011-12-09 21:00:57 +00:00
Nathan Gray
22668f078d Use js link registry to open links, allows more accurate target (popup, tab, _blank) 2011-11-24 19:07:32 +00:00
Ralf Becker
c76f663b61 dont use html5 input type="url", as it requires a scheme (eg. http) 2011-11-24 07:12:36 +00:00
Nathan Gray
1afba81ce8 Add 'No definition' option for default export definition preference. Allows use of legacy nextmatch CSV export with Import/Export app still available 2011-11-18 16:01:57 +00:00
Ralf Becker
38f282bccf fixed warning if no name part exists 2011-11-18 13:03:12 +00:00
Ralf Becker
978b014ffc * Mergeprint: fixed not working merge (white screen, nothing in error-log) under PHP 5.2.6
Catchable fatal error: argument 1 to transformToXml() must be of type DOMDocument
2011-11-16 09:26:23 +00:00
Nathan Gray
26c888ccd4 Encode square brackets and split names at ][, not just [ 2011-11-14 22:57:06 +00:00
Nathan Gray
471f471ee9 Get simple submit buttons (legacy actions) working in datagrid 2011-11-09 21:34:52 +00:00
Nathan Gray
43c6d95a25 Get simple submit buttons (legacy actions) working in datagrid 2011-11-09 21:34:02 +00:00
Nathan Gray
ba2688f66d Fix egw::lang() processing in string js 2011-11-09 20:15:12 +00:00
Ralf Becker
b4bfa392b2 * 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 [
--> needs to be "back"-ported to eTemplate2 to!!!
2011-11-09 14:32:07 +00:00
Nathan Gray
4449f65797 Call entry2name() for titles, don't just use cache 2011-10-31 15:47:24 +00:00
Klaus Leithoff
0141321c76 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:23:04 +00:00
Hans-Jürgen Tappe
abdcd1ca29 Fix a compilation error which currently prevents from using etemplates 2011-10-30 20:43:06 +00:00
Nathan Gray
40fbf0a450 List each link on own line, add ID shortcut like filemanager, if available 2011-10-27 16:08:59 +00:00
Nathan Gray
5878768532 Change {{links}} to exclude files, {{links_attachments}} is everything 2011-10-26 15:06:37 +00:00
Nathan Gray
18e38b1dfc - Add app filter
- List should be comma separated
- Add attachments translation
2011-10-25 22:50:05 +00:00
Nathan Gray
be72daba85 English translation of general links placeholder 2011-10-25 22:38:36 +00:00
Nathan Gray
c972484133 Add common function to get titles of linked entries 2011-10-25 22:30:51 +00:00
Nathan Gray
af96f08ad1 Implement href as a detached attribute 2011-10-24 22:56:50 +00:00
Nathan Gray
0238387c5c Return DOM node so name/ID changes can be applied (handled by caller) 2011-10-24 22:52:01 +00:00
Nathan Gray
5e12553f71 Vaccuously implement Detachable interface for box/vbox - solves some missing node warnings. 2011-10-24 22:06:21 +00:00
Nathan Gray
3bc0bdfd35 Don't overwrite parent variable 'node' 2011-10-24 21:58:42 +00:00
Nathan Gray
a2de7dce27 Implement detached interface for grid so sub-widgets get processed 2011-10-24 19:35:04 +00:00
Nathan Gray
fd728b7317 Fix progress for use in gridview 2011-10-24 17:37:53 +00:00
Nathan Gray
4ae05cb5b8 - Implement detached interface for read only selectbox
- When looking for selectbox options, try last part of the name at the root first
2011-10-19 21:03:22 +00:00
Nathan Gray
0136c6292c Fix custom field preference handling when previous columns disabled 2011-10-19 17:13:27 +00:00
Nathan Gray
c21469a106 Display null dates as empty 2011-10-19 15:15:54 +00:00
Nathan Gray
3b73d9bb3d Fix column sorting 2011-10-18 22:20:27 +00:00
Nathan Gray
3ff03ca92f Get custom field entries to other apps working in nextmatch, sort of 2011-10-18 20:09:48 +00:00
Nathan Gray
40054c6a01 Implement select header and select entry header for custom field headers 2011-10-18 19:24:56 +00:00
Nathan Gray
422c35ba92 Hide app selectbox if application is specified 2011-10-18 19:15:32 +00:00
Nathan Gray
452b7c98e1 Fix typo, accept null values 2011-10-18 16:33:41 +00:00
Nathan Gray
d547545859 Get custom field widgets working as detached nodes in grid 2011-10-18 16:32:35 +00:00
Nathan Gray
39325533bb Implement detached interface for read only, used by custom fields 2011-10-18 16:04:47 +00:00
Nathan Gray
b2eeab5b75 Fix typo breaking submits 2011-10-18 15:44:06 +00:00
Nathan Gray
8674cdd7c3 Avoid undefined val breaking tabs 2011-10-18 15:41:30 +00:00
Nathan Gray
2ae94af14f Allow '#' in field names, for custom fields 2011-10-18 14:50:24 +00:00
Nathan Gray
96a219ede1 Add select to readonly types, display a value that isn't in the options as blank 2011-10-18 14:13:44 +00:00
Nathan Gray
428d201179 Use getEntry() as fallback for text roots 2011-10-17 21:01:04 +00:00
Nathan Gray
b704db187f List each cf as a separate column when sending to server, apps expect it 2011-10-17 20:40:18 +00:00
Nathan Gray
a8531017bd Update selected custom fields when column selection changes 2011-10-17 16:43:34 +00:00
Nathan Gray
87bb95beb4 Check for updated visibility (ex nextmatch column selection change) 2011-10-17 16:34:58 +00:00
Nathan Gray
9ea341151f Handle if string to be parsed is missing too 2011-10-17 16:08:34 +00:00
Ralf Becker
ebb3a2595f reverting r36788 as it breaks editing of custom fields, type is not returned because of added post_process method is also called for customfields-type widget 2011-10-14 18:20:09 +00:00
Nathan Gray
e100d0ce5f Get nextmatch-customfields header working 2011-10-14 17:59:57 +00:00
Nathan Gray
824b57cfa2 Check / load common custom field settings globally, at top level. 2011-10-14 17:57:16 +00:00
Nathan Gray
3260c1cc81 Store common custom field settings globally, at top level. 2011-10-14 17:56:29 +00:00
Nathan Gray
aba7a6eca3 Add namespace, get row template parsed too 2011-10-14 17:55:24 +00:00
Nathan Gray
7f9bbe99a3 Fix attribute defaults getting changed, options no longer get copied across selectboxes 2011-10-13 16:06:56 +00:00
Nathan Gray
cf75387f56 Get custom selectbox options working 2011-10-12 20:56:11 +00:00
Nathan Gray
0700876775 Handle null values 2011-10-12 20:04:16 +00:00
Nathan Gray
cc8891820c Don't overwrite options passed into constructor, merge them 2011-10-12 19:55:33 +00:00
Nathan Gray
5b26a5faed Get nextmatch header down to one line, hopefully looking a little nicer 2011-10-12 19:06:52 +00:00
Nathan Gray
5cab1f7811 Get filter labels into header 2011-10-12 16:42:22 +00:00
Nathan Gray
ea406d3e85 Fix deleteDOMNode() -> removeDOMNode(), fixes labels for selectboxes, probably others 2011-10-12 16:37:56 +00:00
Nathan Gray
a09c277ae7 Log a warning if et2_insertLinkText is called without a node 2011-10-12 16:34:52 +00:00
Nathan Gray
338b14fc9d _rebuildContainer() doesn't take parameters 2011-10-12 16:27:50 +00:00
Klaus Leithoff
1621485da9 * 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:37:35 +00:00
Nathan Gray
a11673dc8f Give a warning when the detached nodes are missing, to help track them down 2011-10-11 20:07:57 +00:00
Nathan Gray
0c2866a133 Rework fetching values from content & setting values in nextmatch 2011-10-11 18:18:58 +00:00
Nathan Gray
06e03d2137 Make sure customfields widget has an ID, or it can't access settings client-side 2011-10-11 18:15:51 +00:00
Nathan Gray
5e3362b3b7 Get some custom fields working 2011-10-07 16:59:50 +00:00
Nathan Gray
a33accfdbb If an empty value is passed, make sure text is cleared 2011-10-07 16:58:36 +00:00
Nathan Gray
575d21b962 Progress on custom fields widgets 2011-10-06 23:44:55 +00:00
Nathan Gray
d88d25b704 Use namespace for nextmatch so children can get their data in the standard way 2011-10-06 23:10:08 +00:00
Nathan Gray
ed76f0491e Expand sub-arrays that are indexed by form-name ('a[b][c]') into actual sub-arrays so perspectives work properly 2011-10-06 23:08:15 +00:00
Nathan Gray
be79886301 Add a warning if trying to set an attribute to an Object, so it doesn't just disappear 2011-10-06 23:04:40 +00:00
Nathan Gray
08f5e28d00 Override getPath() to push nextmatch's ID in 2011-10-06 16:38:51 +00:00
Nathan Gray
c9e4d6801d Add getPath() to core widget so widgets can override it 2011-10-06 16:33:55 +00:00
Nathan Gray
66ea661e08 Try to handle partial template names - row as well as app.function.row 2011-10-06 15:23:24 +00:00
Nathan Gray
f67bfba58d Let transformer handle trying to change sel_options 2011-10-05 22:27:35 +00:00
Nathan Gray
dfe5d21ea4 Save as default checkbox - still a problem getting value on server 2011-10-05 16:12:40 +00:00
Nathan Gray
a9b4bfdaba Move column selection popup to nextmatch 2011-10-04 21:45:54 +00:00
Nathan Gray
99cad7bd37 Update for attributes moved to options sub-property 2011-10-03 17:50:29 +00:00
Nathan Gray
4c593038b0 Update nm query when column selection changes, re-query only when columns added 2011-10-03 17:14:17 +00:00
Nathan Gray
3c1bebf3f1 Fix missing current app... 2011-10-03 16:02:41 +00:00
Nathan Gray
155e3ab3b5 Fix error when sorting/filtering (showed up in timesheet) 2011-10-03 15:34:10 +00:00
Nathan Gray
c230e5f99a Send category options - header doesn't use a template, so they have to be passed 2011-10-03 14:56:20 +00:00
Andreas Stöckel
8f9db8e353 Implemented own code for column resizing as jQuery-UI did not work properly with FF 2011-10-03 13:42:56 +00:00
Nathan Gray
b706d7d13d Fix undefined var breaking linking 2011-09-30 16:19:09 +00:00
Nathan Gray
16d010becf If hooked, keep app in extension_data to persist across etemplate loops. Fixes lost infolog custom fields in addressbook view when changing nm filters 2011-09-30 14:59:41 +00:00
Nathan Gray
43e75da558 Start of column resizing. Works OK in chrome, FF needs some work. 2011-09-29 22:57:42 +00:00
Nathan Gray
c956d6571b Column selection using default or preference 2011-09-29 19:35:20 +00:00
Nathan Gray
168b79bc14 Implement called, but not defined, set_visibility() to update column visibility 2011-09-29 19:21:38 +00:00
Nathan Gray
18f73b21b9 Handling for setting value (for multiple-select) with an array or object 2011-09-29 19:20:20 +00:00
Nathan Gray
9b7cd5019c Silence some messages about missing attribute attributes 2011-09-27 23:44:07 +00:00
Nathan Gray
a1d344077e Set current column filter values 2011-09-27 23:16:54 +00:00
Nathan Gray
36c39cf4b8 Get filterheaders working 2011-09-27 17:58:10 +00:00
Nathan Gray
4e8fe1bb2c Layout & some functionallity for nm header 2011-09-27 00:16:00 +00:00
Nathan Gray
c5237863c2 Get filter options into nm header 2011-09-26 19:11:01 +00:00
Nathan Gray
b41745afdb Get js in row buttons working (again) 2011-09-26 16:19:09 +00:00
Nathan Gray
29501fc027 Add set_value() so selectbox can show current value 2011-09-26 16:01:42 +00:00
Nathan Gray
0ace096701 Start nextmatch header 2011-09-23 19:09:52 +00:00
Nathan Gray
c622957b40 Handle if button onclick didn't get compiled. Still a problem with variable insertion though 2011-09-22 23:03:37 +00:00
Nathan Gray
f7b2a2b02f Set text last, in case title is undefined - it breaks the chaining 2011-09-22 21:40:21 +00:00
Nathan Gray
96bb751a26 Allow full URLs as images, don't try to split off the app 2011-09-22 21:39:34 +00:00
Nathan Gray
04f4287091 Declare variable before using it 2011-09-22 21:39:02 +00:00
Nathan Gray
860d37912b If value is '', don't show a unit either 2011-09-22 21:28:26 +00:00
Nathan Gray
390bb1f6f0 Get all button images working (in timesheet & infolog list at least) 2011-09-22 21:23:30 +00:00
Nathan Gray
c631412dfb Change style for buttons with icons to only display image 2011-09-22 19:10:21 +00:00
Nathan Gray
7488843290 Fix link - this.node is used by parent for DOM node 2011-09-22 19:02:33 +00:00
Nathan Gray
15ed02894f Get submit buttons + buttons with no onclick function in a nm row (legacy actions) to at least fire 2011-09-22 16:25:41 +00:00
Nathan Gray
7297e02f39 Get some buttons working in nm. Not quite done yet, only buttons with onclick function working 2011-09-21 21:07:21 +00:00
Klaus Leithoff
2d494997ab rework of bo_merge::getExportLimit, apply to etemplate, importexport, addressbook, calendar 2011-09-16 13:03:46 +00:00
Nathan Gray
0d47709ed1 Implement transformer changing type on client side by changing type while loading 2011-09-15 18:00:17 +00:00
Nathan Gray
965fb54ffa Fix handling of first example - simple assignment 2011-09-15 17:57:48 +00:00
Nathan Gray
0b41f9da89 Target text could also be a number, treat it the same as string 2011-09-15 17:51:21 +00:00
Nathan Gray
a5e17d5193 Easier warning message for tracking down not existing attributes 2011-09-15 17:49:03 +00:00
Klaus Leithoff
d216a37bba check if app is set before calling the hook on export_limit; TODO: move the call to bo_merge::getExportLimit and cache the appspecific returnvalue there, to improve speed 2011-09-15 17:40:37 +00:00
Klaus Leithoff
d9905d3fb4 calendar/addressbook/API: introduce hook to fetch the export_limit to be applied for an app; introduce method to test if a specific hook exists for an application; fetch the export_limit via hook where appropriate 2011-09-15 14:46:56 +00:00
Nathan Gray
c7d3cba6c6 Fix error breaking dates in nm 2011-09-15 14:02:24 +00:00
Nathan Gray
2302de28f2 Add some et2_IDetachedDOM handling 2011-09-14 20:52:59 +00:00
Nathan Gray
ff2a8102d6 Implemented all link widgets 2011-09-14 20:36:39 +00:00
Nathan Gray
812242a224 Get images working in buttons, sort of
-- Don't know what's happening with events in the grid.  Something happens if you double click, but it's not the button's click method.
2011-09-14 18:37:38 +00:00
Nathan Gray
8b1a63e1ee Transform attributes before passing them to the row's widget 2011-09-14 15:44:54 +00:00
Ralf Becker
ad99ce981f getting server supplied actions working, thought actions submitting the form do not yet work 2011-09-14 14:25:09 +00:00
Klaus Leithoff
70a7026915 * merge_print/calendar: control the availability of mergeprint and csv export, if the export_limit is set to ->no<- and the user in question is not exempted from export_limit restrictions 2011-09-14 13:09:13 +00:00
Klaus Leithoff
36e3a1b8ce add missing translations for export_limit feature of calendar, correcting translation strings for export_limit warnings 2011-09-14 10:27:53 +00:00
Ralf Becker
2bd343ee05 - processsing actions now on serverside, also creating action_links array
- call_get_rows return now directly rows indexed by row-number: start, ..., start+num_rows-1
- non-numerical indexed rows are returned as is
--> widget still calls ajax_get_rows, even as we supply the first N=25 rows
2011-09-14 09:41:08 +00:00
Nathan Gray
a3901bd00f Link list 2011-09-14 00:06:04 +00:00
Nathan Gray
6b361f770f Handle app/image_name style values 2011-09-14 00:04:54 +00:00
Nathan Gray
43449a0c24 Fix bug where display was not using user preference 2011-09-14 00:04:06 +00:00
Ralf Becker
77f2a043fc local caching and queueing of egw.link_title() requests 2011-09-13 19:55:06 +00:00
Ralf Becker
5cadd29d58 Basic egw.link_title(_app,_id,_callback,_context) method.
Plan is to run a clientside cache and own queue for link_titles, as server can query titles for N id's for a given app more effiently then N separeate queries.
2011-09-13 18:23:43 +00:00
Nathan Gray
e31357bd88 Fix date & duration in dataview 2011-09-13 17:37:29 +00:00
Nathan Gray
077acb3fb0 Better warning to help track down offending widget 2011-09-13 17:18:00 +00:00
Klaus Leithoff
74b41ec99a fix bug regarding merge_print with export_limit set in calendar, as calendar may pass a search query instead of a list of ids (this is the reason, why the test within bo_merge on export_limit is not working as expected) 2011-09-13 15:41:31 +00:00
Klaus Leithoff
d52c72207c * calendar/importexport/addressbook: calendar introduce new config option to set app specific export_limit; calendar csv export: use enumerate for exporting events as csv; bo_merge: introduce new helper functions to get and check export-limit; addressbook: use new helper functions 2011-09-13 09:05:33 +00:00
Klaus Leithoff
55ba753e3c making 1st param for custumfield_widget construct (ui) optional, to avoid warning 2011-09-13 08:38:16 +00:00
Nathan Gray
f44558a385 Got link entry working as separate widget 2011-09-12 23:43:39 +00:00
Nathan Gray
1bf74cc95b Read only for date 2011-09-12 15:21:42 +00:00
Ralf Becker
132cafc8a9 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:51:21 +00:00
Ralf Becker
9066385fa5 check if we can use the XSL extension, to not give a fatal error and rendering whole merge-print non-functional 2011-09-12 10:21:18 +00:00
Ralf Becker
2aff9d170b implementation of old server etemplate::js_pseudo_funcs() on client as et2_js_pseudo_funcs, thought we need to pass the namespace to et2_checkType!!! 2011-09-10 13:16:40 +00:00
Ralf Becker
d2adcf972d skip the empty (NULL) row 2011-09-09 19:55:22 +00:00
Ralf Becker
791f4ae071 remove empty rows required by old etemplate to compensate for header rows 2011-09-09 19:46:44 +00:00
Ralf Becker
387be881ee egw.link(_url, _vars) method and using it for JS event handler 2011-09-09 19:41:09 +00:00
Nathan Gray
18a930446f Avoid '_node is undefined' error breaking nm 2011-09-09 16:50:44 +00:00
Nathan Gray
c0962b1ce7 Don't give an exception on null values 2011-09-09 16:46:55 +00:00
Ralf Becker
4600445527 fixed exception with text "0" 2011-09-09 16:30:20 +00:00
Nathan Gray
a5ea1f78d9 Get selectbox _appendOptionElement working with empty_label automatically 2011-09-09 15:47:38 +00:00
Andreas Stöckel
5a994382ed Added forgotten et2_dataview_view_rowAOI.js 2011-09-09 14:41:11 +00:00
Andreas Stöckel
1b74d53608 grid now keeps its average height setting after clearing 2011-09-09 14:40:28 +00:00
Andreas Stöckel
2290b04102 Loading data from server in nextmatch widget - readonlys is not processed as it is not so easy to handle 2011-09-09 14:32:55 +00:00
Ralf Becker
e998a1fed5 - sending 25 rows with inital request to client
- callback for further rows from client
2011-09-09 14:00:30 +00:00
Ralf Becker
b045e1f852 stopping permanent error_log 2011-09-09 13:26:54 +00:00
Ralf Becker
64b4ac7e68 added a static method max_upload_size_message, required by some apps 2011-09-09 13:26:14 +00:00
Ralf Becker
395f4a804d added progress-widget 2011-09-09 12:39:27 +00:00
Ralf Becker
e4b8dfd9f5 working progress widget, thought infolog uses a button with an image, which is a progressbar ... 2011-09-09 12:17:16 +00:00
Andreas Stöckel
3ec9de5a30 Removed silver nextmatch background color introduced for debug purposes 2011-09-09 11:44:44 +00:00
Andreas Stöckel
58bc3367df Implemented server-side callback function 2011-09-09 11:29:07 +00:00
Andreas Stöckel
45d02dfeb9 Fixed dataview dependencies and got nextmatch-widget load in timesheet.index 2011-09-09 09:57:59 +00:00
Ralf Becker
476deb3605 query_list(). initialize return value to array(), to allways return an array 2011-09-09 09:41:51 +00:00
Andreas Stöckel
65a90eabb8 Defaulting 'null' entries in the content-arrays to {} 2011-09-09 09:28:48 +00:00
Ralf Becker
efca5500d9 first try of a progress widget, not yet working :-( 2011-09-09 08:29:31 +00:00
Ralf Becker
bef3880b48 fixed wrong name 2011-09-09 08:28:40 +00:00
Nathan Gray
89991ffb60 Link widget with async file upload + linking 2011-09-09 00:05:46 +00:00
Nathan Gray
312fcf2e0b - Change remove file handler to only remove if you click the x, not the whole entry
- Add hooks for js functions when upload starts and finishes
2011-09-09 00:05:18 +00:00
Ralf Becker
ea03c4032b implemented link attributes for image-widget and added them to xulio, some docu for describtion 2011-09-08 20:44:53 +00:00
Nathan Gray
e7af7de431 Pass etemplate_exec_id in POST instead of GET to avoid potential issues with long ids 2011-09-08 20:33:46 +00:00
Andreas Stöckel
57dc999881 Activating et2_IDetachedDOM implementation of et2_image widget as image and progressbar are now to seperate widgets 2011-09-08 19:36:48 +00:00
Andreas Stöckel
115d677113 Fixed real problem with building new templates failing after nextmatch widget has been used 2011-09-08 19:18:01 +00:00
Ralf Becker
89847abae6 added "progress"(-bar) widget to differ from image and using it in templates 2011-09-08 19:00:57 +00:00
Andreas Stöckel
ea346ce19c Fixed problem with building new templates failing after nextmatch-widget has been used 2011-09-08 18:53:08 +00:00
Andreas Stöckel
37dc6545cc Fixed bug which caused row content to disappear after a while 2011-09-08 18:42:18 +00:00
Andreas Stöckel
87c0db7be1 Fixed correct expanding of names and implemented the dataProvider class 2011-09-08 18:36:09 +00:00
Nathan Gray
e151398d94 Add read-only implementation of date-duration 2011-09-08 17:11:49 +00:00
Ralf Becker
008f009d80 - implemented new egw.link_app_list(_must_support) and egw.link_get_registry(_app, _name) methodes
- using egw.link_app_list('query') in link widget (no need to transfer it additonally)
- added some more docu to egw object
2011-09-08 12:24:53 +00:00
Nathan Gray
d9f321a413 Start of a link-to widget using jQuery-UI's autocomplete 2011-09-07 23:32:24 +00:00
Andreas Stöckel
b1223cb426 Expressions in the dataview-rows are now evaluated correctly 2011-09-07 16:59:23 +00:00
Andreas Stöckel
89304fca0c Fixed problem with whitespace being skipped 2011-09-07 16:35:34 +00:00
Andreas Stöckel
efc173cd2c Fixed problem with escaping and added a few test cases to the PHP->JS compiler 2011-09-07 16:31:32 +00:00
Andreas Stöckel
db074aa39c Added code which compiles PHP string expressions (like {[test]} ) into JavaScript functions. 2011-09-07 16:11:13 +00:00
Nathan Gray
ae1b9c8a64 - Don't let tidy wrap lines - line breaks don't go inside tags
- If tidy reports errors, strip all tags so we should get some sort of openable file
2011-09-07 15:15:08 +00:00
Ralf Becker
b633044a46 * API/Calendar: allow to link to accounts and allow to select accounts as participants by searching them like contacts 2011-09-07 14:47:51 +00:00
Nathan Gray
b2e032245a - Nicer UI for status
- Implement server side callback function when file is uploaded
- Send needed file info back to client instead of storing in session
2011-09-06 19:55:52 +00:00
Nathan Gray
02c414129a Check for name expansion 2011-09-06 19:53:14 +00:00
Nathan Gray
d71b807b8f Use 'utf-8' (instead of utf8) as the encoding, it seems to solve any encoding issues 2011-09-06 18:21:39 +00:00
Nathan Gray
67d7615ecc Fix config for HTML Tidy, fix stripped text in lists 2011-09-06 17:22:48 +00:00
Andreas Stöckel
8d5b990826 Implemented system for fast cloning of rows in the dataview - widgets which want to support this method have to implement et2_IDetachedDOM 2011-09-06 16:50:38 +00:00
Ralf Becker
f8ad548a9a added missing semicolon to entity &#8203 and do an urldecode to get a nicer looking link 2011-09-06 07:41:14 +00:00
Ralf Becker
7984af4c0e specify encoding, as it defaults to latin1 (iso-8859-1) which is not longer used by EGroupware and writes non-ascii as entities 2011-09-06 06:25:17 +00:00
Ralf Becker
0947430796 missing encoding of id 2011-09-06 06:23:12 +00:00
Nathan Gray
9e17bd1faa If HTML Tidy is available, use it to clean HTML content 2011-09-05 20:24:10 +00:00
Nathan Gray
40a89ac81e Preserve text with styles inside lists, discard styles 2011-09-05 20:04:15 +00:00
Nathan Gray
cb5ee32664 Remove spans with no attributes, they're invisible and can cause invalid XML with linebreaks 2011-09-05 16:10:04 +00:00
Andreas Stöckel
d037187234 Added code for creating widget-rows in the dataview 2011-09-05 14:35:28 +00:00
Andreas Stöckel
a13dfef19e Fixed code for auto-reducing the grid rows, removed debug messages 2011-09-05 09:13:58 +00:00
Ralf Becker
504db7e3ae validation for date-widgets, needs more testing 2011-09-04 08:37:39 +00:00
Andreas Stöckel
b99c338511 Fixed IE compatibility 2011-09-02 16:23:26 +00:00
Andreas Stöckel
7457315ea4 Fixed problem with calculated values diverging from actual height values 2011-09-02 16:15:57 +00:00
Nathan Gray
8875c94c24 Async file uploads 2011-09-01 22:07:30 +00:00
Andreas Stöckel
0607a2c9a8 Fixed problem with column widths not being calculated/displayed correctly 2011-09-01 10:02:23 +00:00
Nathan Gray
990e1701f5 Work in progress on file upload 2011-08-31 23:37:30 +00:00
Nathan Gray
e8467d6679 Handling of 12 hour time in read-only timeonly 2011-08-31 20:32:24 +00:00
Nathan Gray
8daa7d0021 Get date+time & time working using HTML5 type=time if available, fallback to 2 selectboxes if not 2011-08-31 19:58:38 +00:00
Nathan Gray
c953c58b17 Remove warning, not needed 2011-08-31 19:48:07 +00:00
Andreas Stöckel
54cf0cbf26 Selectbox widget now doesn't use actual widgets for the transmitted options - for lists like the country selection, this created a huge slowdown while page creation. 2011-08-31 16:58:44 +00:00
Nathan Gray
0dea78ab2e - Pull application name from template ID for image
- Use label as tooltip
- Apply CSS classes to image
2011-08-31 16:00:45 +00:00
Andreas Stöckel
c5c90fbce0 Removed debug messages and made it work with ff 2011-08-31 15:58:24 +00:00
Andreas Stöckel
035a4d369f First version of the dataview which does... well... 'something' at least (currently shows dummy rows with non-etemplate content) Need to cleanup code and test auto hiding of rows (code is actually there) 2011-08-31 15:39:24 +00:00
Ralf Becker
17d066a724 using egw.user(_field) to get account_id and phone-number, plus fixing precedence of "tel:" for iOS/Android 2011-08-31 12:18:38 +00:00
Ralf Becker
499726cb23 using egw.image(), thought there are some problems:
- src attribute get never translated: fixed
- label is in etemplate not the alt attribute, it is a title / tooltip (probably ok as alt too)
- egw.image should be called with appname part of template
- if image is not found, etemplate should render an empty widget, not a broken one
2011-08-31 06:29:51 +00:00
Nathan Gray
114debd00f Include the handler code that caused the error 2011-08-31 00:09:55 +00:00
Nathan Gray
7b7397e92d Fix missing popup button 2011-08-31 00:08:59 +00:00
Nathan Gray
86a356314b Fix missing onclick 2011-08-31 00:03:50 +00:00
Nathan Gray
131a032da6 Fix regexp - no match() function, switched to test() 2011-08-30 21:36:55 +00:00
Nathan Gray
8a632c723a - Add image widget
- Add missing dependency on et2_core_common
2011-08-30 20:56:01 +00:00
Nathan Gray
4fc8cadcb2 Code cleanup - remove debug, late date class handle date-houronly 2011-08-30 20:52:10 +00:00
Nathan Gray
c84a471538 Implement last of the date widgets 2011-08-30 20:50:55 +00:00
Ralf Becker
bc739d8309 adding an empty hidden field, to force some return value, if no account was selected for export_limit_excepted, without any return value nothing gets returned and therefore stored 2011-08-30 08:16:51 +00:00
Nathan Gray
c0abff9612 - Get email widget working with felamimail if user has access, mailto: otherwise
- Get phone widget working using telephony integration if configured, tel: if user's on an Android or iPhone
- Popup calendar on date widget
2011-08-29 21:15:53 +00:00
Andreas Stöckel
97418ebbbb Just commiting current state of my work on the 'dataview' (grid), does NOT do anything usefull right now 2011-08-29 15:04:10 +00:00
Ralf Becker
fa435de6a9 allow to call a function instead of a static helptext 2011-08-27 18:35:40 +00:00
Ralf Becker
8b49d88788 ignore et2 base-class when scanning for widgets to display in (old) editor 2011-08-27 09:08:07 +00:00
Ralf Becker
07f7e61e91 do not call parent constructor for old etemplate 2011-08-27 09:03:32 +00:00
Ralf Becker
389486793d - config is now cached on instance level
- arrays in $GLOBALS[egw_info][server] are now automatically serialized and unserialized
- new static method to check if user is export-limit excepted
--> saves to query it on each request (for non-phpgwapi, which was already cached in the session)
2011-08-26 13:50:20 +00:00
Ralf Becker
7d33eb610a partially reverted r36310 as it has side-effects on the nextmatches widget (in actions and selected rows) 2011-08-26 13:30:05 +00:00
Andreas Stöckel
f370f5f8ab DOM Nodes are now reinserted at their correct place after having been detached (caused bug whenn calling 'showMessage' on an element which is inside a vbox) 2011-08-26 11:15:28 +00:00
Andreas Stöckel
5c4c175ce2 Checked IE compatibility; dataview columns now resizes correctly; removed event code from etemplate2.js, use interfaces instead (as done with the 'resize' event) 2011-08-26 09:58:25 +00:00
Nathan Gray
890efd006b Implement blur/placeholder for textbox 2011-08-25 23:39:34 +00:00
Nathan Gray
105c79883f Hide button when value is cleared 2011-08-25 23:00:44 +00:00
Nathan Gray
7f5d8cec65 Fix typo 2011-08-25 22:50:08 +00:00
Nathan Gray
e551dc3895 URL widget
- Still needs to get telephony link from server, felamimail not tested because egw.link_registry not populated
2011-08-25 22:42:07 +00:00
Nathan Gray
5947d0a481 Fix typo 2011-08-25 22:13:54 +00:00
Nathan Gray
0571ac47e2 Get basic HTML formattings working in word 2003, formattings inside table working in word documents 2011-08-25 20:28:24 +00:00
Ralf Becker
fb62831e86 fixing TypeError stoping etemplate.test.contact_widget from displaying, because attribute "type" is not defined
maybe we dont want setting of undefined attributes, but then it should give a clear error (eg. exception)
--> https://localhost/egroupware/etemplate/inc/class.etemplate_new.inc.php?name=etemplate.test.contact_widget tests contact-widgets
2011-08-25 20:09:45 +00:00
Ralf Becker
502ac42923 - etemplate_widget_transformer abstract baseclass to define new widgets using a transformation out of existing widgets
- defines a syntax to describe how the widget is build out of existing widgets
--> reimplemented contact-widget using that aproach on serverside for old etemplate
--> sending the modifications via etemplate_widget::setElementAttribute() to the client fails, because client does not support changing the widget type
--> need to be implemented on the client
2011-08-25 19:52:51 +00:00
Andreas Stöckel
4114068cb3 Added et2_extension_nextmatch_dynheight.js which cares about resizing a div to the maximum possible height - this is needed because the new grid has to be explicitily sized to a given width and height 2011-08-25 15:54:15 +00:00
Nathan Gray
005b483487 Replace extra XML declaration 2011-08-25 15:46:54 +00:00
Andreas Stöckel
ec5b162bfa Moved et2 core interfaces to own file; implemented Class.free which cares about calling 'destroy', removing all references the object may hold and rendering the object unusable after 'free' has been called; added 'getMem_freeMem_trace' which helps hunting down memory leaks with objects derriving from Class; added first implementation of the nextmatch widget - currently does nothing else but rendering the header and clicking on the nextmatch_sortheader labels 2011-08-25 13:35:53 +00:00
Nathan Gray
e6a34adfe7 Fixes for word 2003 2011-08-24 21:17:14 +00:00
Nathan Gray
bb00c4217d Don't fail if table has properties, support table borders in docx files 2011-08-24 17:29:03 +00:00
Andreas Stöckel
a11abf6412 Selectbox options now set themselves selected 2011-08-24 11:31:30 +00:00
Andreas Stöckel
6e33c99db0 Fixed bad dependency 2011-08-24 10:44:51 +00:00
Andreas Stöckel
53f4064cdc Added some naming scheme to the js files 2011-08-24 10:18:07 +00:00
Andreas Stöckel
7b5e73b600 Added support for attribute descriptor 'translate': '\!no_lang', fixed problem with selectbox options not being read from sel_options, removed attributes from init function as they were either outdated or not used 2011-08-24 10:05:52 +00:00
Ralf Becker
04aa3d35b9 - no longer translating options on server-side
- sending evtl. necessary no_lang attribute via modifications to client
- deprecated template->(get|set|disable)_cell(_attribute) in favor of new etemplate_widget::(get|set|disable)Element(Attribute)
--> options via sel_options are currenlty not working on clientside
2011-08-24 09:24:55 +00:00
Ralf Becker
57767df461 fixed not working label_for --> for attribute 2011-08-24 07:55:20 +00:00
Ralf Becker
33c6766c88 - fixed xul_io class not exporting id of tab
- fixed tab widget to use id instead of label
- added attribute names for describtion (label) in xul_io, to export them as single attributes not comma-sep. as options
- added translate: true to description/label title
--> xet-files need to be dumped new, to get the tab-ids
--> seems like describtion value is translated unconditional, it should only be translated if no_lang attribute is not set or false, while label attribute is always translated (Andreas?)
2011-08-24 07:18:59 +00:00
Nathan Gray
07c61d65f0 Implement selecting tab via content array, hiding tab via readonlys array 2011-08-23 21:33:40 +00:00
Nathan Gray
e256009fd5 Fix merging styles in docx (& maybe xmlWord.Documents) 2011-08-23 19:59:08 +00:00
Nathan Gray
42af1f2db6 Fix line breaks in xmlWord.Documents 2011-08-23 19:56:46 +00:00
Andreas Stöckel
e1eefeaafa Fixed problem with tabs not being translated 2011-08-23 17:10:56 +00:00
Andreas Stöckel
b0a21acb12 Changed name of 'label_for' attribute to 'for', implemented attribute translation 2011-08-23 17:05:05 +00:00
Andreas Stöckel
934e33fdd7 Fix for reading modifications 2011-08-23 15:28:54 +00:00
Andreas Stöckel
f00d5aba60 Parsing the 'modifications' array 2011-08-23 15:27:34 +00:00
Andreas Stöckel
b382dc570f Fixed readonly buttons are rendered 2011-08-23 15:05:13 +00:00
Andreas Stöckel
86414e7daa Moved 'getValues' function to etemplate2 class, added 'et2_surroundingsMgr' class, which is capable of managing DOM-Nodes which are inserted around an widget (see set_label function in et2_input and showMessage function in et2_baseWidget as an example of how to use it), added parsing server side validation errors 2011-08-23 14:59:49 +00:00
Andreas Stöckel
cb27424f5b Added et2_createWidget function and got et2_selectbox_ro working correctly with predefined options and non-string option-entries. 2011-08-23 09:45:45 +00:00
Nathan Gray
d9ab0a9ce8 - Fix empty label
- Add readonly for selectbox
2011-08-23 00:12:01 +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
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
d6509ad506 fixed grid in cf widget displays border, if options are set 2011-08-18 09:22:59 +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
Andreas Stöckel
41787c36f3 - Reading readonly properties
- Added system for readonlys: Readonly is passed in constructor as third parameter. If a widget class is registerd with "[type]_ro" (see et2_textbox for example) this one is created
- Added new 'valueWidget' base class which introduces the 'value' attribute and implements auto loading from the content array
- Implemented readonly attribute for buttons and textboxes
2011-08-16 12:31:18 +00:00
Nathan Gray
4fe9d951a8 Fix typo 2011-08-15 18:54:13 +00:00
Andreas Stöckel
3bdca867e7 et2_debug is now capable of taking any count of arguments as the console.* functions do, improved 'Attribute does not exist' message, fixed memory leak in grid (inherited destructor was not called) 2011-08-15 16:03:53 +00:00
Andreas Stöckel
8207a325aa Moved loading of data-array attributes to the new 'loadingFinished' function 2011-08-15 14:52:45 +00:00
Andreas Stöckel
7800cfc5d4 Implemented et2_IInput interface for et2_button in order to transfer the id of the clicked button back to the server, implemented etemplate2.submit function, implemented egw_json et2_load response type to load a new template with new data. 2011-08-15 14:29:58 +00:00
Andreas Stöckel
fd21e247a1 etemplate2 object now creates not passed entries in the data array 2011-08-15 12:46:27 +00:00
Andreas Stöckel
8c9fd0f636 Implemented usage of mutliple array-manager objects (the object which cares about proper namespacing etc.) for each supplied data manager part (like 'content', 'readonlys' etc.), renamed et2_contentArrayMgr.js to et2_arrayMgr.js, renamed et2_all.js to etemplate2.js and added an top-level object which cares about loading the template, creating the array managers etc. 2011-08-15 12:34:00 +00:00
Andreas Stöckel
be34748b32 Added et2_all.js 2011-08-15 11:13:22 +00:00