Commit Graph

1104 Commits

Author SHA1 Message Date
Ralf Becker
ad5d2c3941 docu update and fixed so_sql_cf::delete($keys,true) to always return array 2009-09-16 10:20:34 +00:00
Stefan Becker
e88e7fab4b added serial letters for docx files 2009-09-13 12:06:40 +00:00
Christian Binder
9259494a02 just a small fix for the debug output 2009-09-12 09:09:28 +00:00
Nathan Gray
c8f411bd4c Make etemplate able to handle multiple calls to egw::lang() in the same line 2009-09-11 20:13:06 +00:00
Ralf Becker
4e2f35d4dc added support for ms excel 2007 2009-09-01 14:41:48 +00:00
Ralf Becker
4a2d859391 implemented OO spreadsheet support 2009-09-01 10:25:36 +00:00
Klaus Leithoff
d7c2041872 making do_notification public again, as it is used for addressbook_contactform 2009-08-28 11:16:57 +00:00
Ralf Becker
a8fa4383e5 "fixed typo" 2009-08-28 07:14:39 +00:00
Christian Binder
ce3ee8e556 contact_replacements() is called from outside the class and extended class (felamimail) and therefore it should be public 2009-08-26 20:50:14 +00:00
Ralf Becker
d990609083 refractored addressbook merge class in an abstract class and an implementation for addressbook 2009-08-26 17:12:43 +00:00
Ralf Becker
eea731e906 allow to add further options behind type, separated with a colon 2009-08-26 17:09:07 +00:00
Ralf Becker
c9882fe76e "fix for bug #2222: Since a one of the last SVN update... Unable to print a ticket... Blank page...
bo_tracking::get_body() was protected, now public again"
2009-08-26 06:27:43 +00:00
Ralf Becker
8e55998ce2 "fix for some columns, which could not be switched off (eg. InfoLog category col), after the last fix" 2009-08-25 14:40:28 +00:00
Ralf Becker
beee590fc2 "fix nm widget to deal with same header in multiple columns (eg. InfoLog's 2 time columns)" 2009-08-25 13:14:00 +00:00
Ralf Becker
3a3a0e1613 "fix to allow to specify multiple autoinc_id's (as eg. done in timesheet_bo::sum())" 2009-08-25 12:48:04 +00:00
Ralf Becker
8b4ff9f6fd "do NOT translate file permissions" 2009-08-25 07:35:53 +00:00
Ralf Becker
fdbf3b207b - added support for 1:N relations to history logging
--> added documentation for 1:N relations and general usage
- created a public method to determine if a record is changed,
  which can be called before an application to determine if
  saving is necessary (it's result can then be passed on to
  bo_tracking::track() to not compute the changed fields again)
2009-08-21 12:57:12 +00:00
Klaus Leithoff
796dba966d if app changes while displaying content, be aware of that (as of addressbook infolog view) 2009-08-20 14:11:10 +00:00
Ralf Becker
4f910c4a5e "automatic convert db timestamps to unix timestamps, our db class does the reverse on writing them" 2009-08-20 11:41:13 +00:00
Ralf Becker
19086bb7b0 Some fixes and enhancments to simplify search with so_sql
- search($criteria,...) if $criteria is a string, search in all data
  columns or - if set - $this->columns_to_search
  --> that's NOT backward compatible - though a quick scan through the
      EGroupware code showed no use of $criteria as string!
- this automatic search, appends and prepends '%' only, if search
  pattern does NOT already contain wildcards (* or ?)
  --> allows to search "test*" for values starting with test
- improved handling of db timestamps (Y-m-d H:i:s), to allow to search
  for them too (eg. "2009-08-*")
- so_sql_cf::get_rows() now calls parent
- so_sql_cf::search() adds DISTINCT if query contains a join
--> ToDo: remove custom search code from apps, to give consitent search
behavior in all apps and simplify the code there
2009-08-19 12:08:52 +00:00
Ralf Becker
c324275b1d docu update and remove decriated assignment of objects by reference 2009-08-19 11:58:43 +00:00
Ralf Becker
35626a6593 "docu update to avoid a common pitfall" 2009-08-17 12:28:30 +00:00
Christian Binder
40372cba8f add eGW independent html output mode for new mail stationery feature sponsored by Inspections Unlimited Franchise services (http://www.inspectionsunlimited.com) 2009-08-14 22:15:15 +00:00
Ralf Becker
281502f36f allow to use an etag in so_sql_cf::save(), eg array("etag=etag+1") 2009-08-10 16:32:45 +00:00
Ralf Becker
b400e8d880 "allow a negative filter (eg. '!xyz'), NULL or array with possible values as custom field filter" 2009-08-10 15:31:49 +00:00
Ralf Becker
2a4e1a95cb "- method to automatic convert all timestamp fileds to and from usertime
- enable this->timestamps to deal with timestamp type columns (as well as integers as before)"
2009-08-10 13:48:11 +00:00
Ralf Becker
f8ccec0d35 if textarea is readonly, but form_name is already used by an other widget, dont use it
browser would only send the content of the readonly (and therefore unchanged) field
2009-08-10 11:33:32 +00:00
Ralf Becker
ae855c4979 "we explicitly need to delete custom fields, if value is empty or field allows multiple values or we have no unique index" 2009-08-10 09:12:35 +00:00
Ralf Becker
821f0daf42 "rewriting onchange for checkboxes for IE to an onclick" 2009-07-30 07:10:31 +00:00
Ralf Becker
6fe6365c78 "fixed sometimes not working [Values] button" 2009-07-23 11:27:46 +00:00
Ralf Becker
dfaa808b8c - allow to use $row or $row_cont, $c to disable columns or rows,
eg. "$row_cont[x]=y"
- complete_array_merge does no longer overwrite numerical keys,
  if value is an array
2009-07-23 11:25:10 +00:00
Ralf Becker
e9a7336a35 "removed onclick alert" 2009-07-18 15:35:42 +00:00
Ralf Becker
2cfa5530c3 "if path ends in a slash, multiple files can be uploaded, their original filename is kept then" 2009-07-16 12:57:00 +00:00
Ralf Becker
332901742b "- document and clearify option: required mimetype or regular expression for mimetype to match, eg. '/^text\//i' for all text files
- unset onchange, if $id is empty"
2009-07-16 08:02:37 +00:00
Ralf Becker
7c3f249f71 "added static function to check if file exists, which does NOT take the extension into account (can be used in the application code too)" 2009-07-15 11:31:02 +00:00
Ralf Becker
1dc2c88059 fixed not working precistion display 2009-07-15 10:47:36 +00:00
Nathan Gray
2bb5884ad9 Captcha widget based on secureimage, contributed by Randy Houlahan 2009-07-14 16:29:47 +00:00
Ralf Becker
ee2b5cf164 new param to delete method only return ids: can be used in extended class for deletes in other tables 2009-07-13 08:17:41 +00:00
Ralf Becker
919aea627e "use form_name (with replaced substitutes) instead of $cell[name], allows to put into the name something like \"app:$cont[id]:files/blah\" or \"app:$row_cont[id]:files/blub\"" 2009-07-13 08:14:59 +00:00
Ralf Becker
49c5b2933c New vfs-upload widget to upload files into vfs:
- if file already exists, show download and delete link
- if file does NOT exist, show upload box
Name or value of widget is either:
- vfs path or
- $app:$id:$relative_name (if empty($id) a temporary directory in users
  home directory is created and application is responsible to move
  content of that directory to the entry directory (/apps/$app/$id)
2009-07-11 09:07:59 +00:00
Ralf Becker
62d3afdd36 "display on horizontal scrollbar for width 100%" 2009-07-04 14:17:58 +00:00
Ralf Becker
dcce79d92a check if application of template has a app.js file
--> load it
2009-07-03 08:38:25 +00:00
Ralf Becker
15f7e3a1db "fixed not deletetable links: to delete one, you have to select 'New search ..." 2009-06-30 18:37:30 +00:00
Ralf Becker
c4e24a1e58 if we have more then 5 cf's to display --> limit header height to 5 lines plus vertical scrollbar 2009-06-30 18:21:15 +00:00
Ralf Becker
a1d81f3e06 "if label_for starts with a '#', it is already an id - no need to create default id from it" 2009-06-27 10:18:44 +00:00
Ralf Becker
232252475f patch fixing many depricated functions (eg. posix regular expressions) and features, which fill up the error_log under php5.3 (and will no longer be available under php6).
Patch is mostly created by script in egroupware/doc/fix_depricated.php in separate commit.
I do NOT advice to apply this patch to a production system (it's commited to trunk!), as the automatic modified regular expressions have a good change to break something ...
2009-06-08 16:21:14 +00:00
Nathan Gray
f124b889d8 Need to define a __isset() method so empty() works with __get(). Fixes missing body javascript when looping. 2009-05-27 14:57:29 +00:00
Ralf Becker
5e9699a5b5 reverting again r27107, as it has to many (unwanted) sideeffects 2009-05-24 20:03:28 +00:00
Ralf Becker
3dadb5abe3 - allow to specify on sub-type level, if post_process method should be
used for extensions
- if extension is called with empty name, it can set a name in
  cell[name], which then get's used for the content (extensions can use
  eg. an option to select the name)
2009-05-24 18:02:54 +00:00
Ralf Becker
53a8d50bb0 "fixed date-time widget to correctly write seconds, eg. if output format is \"Y-m-d H:i:s\"" 2009-05-22 07:04:55 +00:00
Ralf Becker
ef1227767a "validation error in named tab (eg. \"tabs=general|one|two\") did not change to tab with field causing the validation error" 2009-05-21 19:16:32 +00:00
Ralf Becker
7049fe4bc0 - implemented htmlpurifier also for sitemgr (only non site-admins) and
knowledgebase
- html::fckEditor() has optional parameter to NOT use htmlpurifier
2009-05-19 19:23:38 +00:00
Ralf Becker
8f797be836 Added HTMLPurifier (http://htmlpurifier.org/) Version 3.3.0
- can be used via html class like: 

        $clean_html = html::purify($html);

- using it now in eTemplate to remove malicious code from html:
  a) when displaying "formatted text"
  b) when "formatted text" get's input by the user
2009-05-19 17:32:06 +00:00
Ralf Becker
75850fd66b fixed problem pointed out by Necky(T.Okabuchi) <neckyegw(at)wanaya.jp> 2009-05-19 15:24:15 +00:00
Ralf Becker
082f21d3e6 "fixed search for new phrases, to also work with newer method hooks and not only with file-hooks (preferences, admin, settings, ...)" 2009-05-19 13:34:27 +00:00
Ralf Becker
a5f7d8d4a3 "fix for bug #2085 - Rev. 27023 PM does no longer save custom fields" 2009-05-19 07:31:13 +00:00
Ralf Becker
d56e962ca3 "allow to store custom fields with 1:N relations (eg. multi-select-box) as real 1:N relation in the DB
(default is the old behavior!)"
2009-05-17 22:03:31 +00:00
Ralf Becker
654d91cc7c "allow extension preProcess method to modify / fix $form_name of a widget:
- usefull if complete name is determined by eg. options
- extension has also to fetch the content from etemplate::$request->content!"
2009-05-17 13:56:32 +00:00
Ralf Becker
220492880d allow to load widget specific edit-template from the app the widget belongs too, eg. infolog-value --> infolog.widget.infolog-value 2009-05-17 11:41:58 +00:00
Ralf Becker
f4b09d620f "allow one-letter name/mailbox part in an email address" 2009-05-15 07:35:58 +00:00
Ralf Becker
2a03d32d81 Automatic import labels into the content of an edited template via a
callback: ${app}_bo::labels(). They are set as $content['labels']
2009-05-14 17:45:00 +00:00
Ralf Becker
a94586bad4 New syntax (@@name) to access values absolute to the content array ofs
the request. Here's an example:
$content['my-label'] = $id ? 'Edit' : 'Add';
You can use it now in the template of an nextmatch row for the label:
@@my-label 
Saved the need to import these kind of data in the get_rows function
into the rows.
2009-05-14 17:42:48 +00:00
Ralf Becker
5d7b9133f1 using is_readable 2009-05-14 17:38:09 +00:00
Ralf Becker
31cb95989e "allow static get_rows callbacks, eg. 'app_ui::get_rows':
- on php5.3+ they get directly called via a variable: $callback($query,$rows,$readonlys)
- on php < 5.3 we instancate the class, an call the method non-static: $obj->$method($query,$rows,$readonlys)
--> allows application code to be prepared for static callbacks
Note:
- we can not use call_user_func, as it does NOT support passing by reverence, which is required for $rows and $readonlys parameter
- static callbacks allow to NOT instanciate the class again for the callback (without current dirty methods like placing the object in $GLOBALS[$class])"
2009-05-14 10:22:13 +00:00
Ralf Becker
fe03b91b54 "- 5th option for select-cat: parent category
- adding category desciption (if available) as option title"
2009-05-14 08:02:56 +00:00
Ralf Becker
95168d28bb "method to access comments in schema definition" 2009-05-13 09:58:21 +00:00
Ralf Becker
51284255c1 Edit and set comment field for colums in eGW's schema files 2009-05-13 07:39:58 +00:00
Ralf Becker
e5ffe827f6 "extend readonly handling of button to images (images with a link have a similar function)
setting their name in $readonlys, removes the image completly"
2009-05-08 15:51:57 +00:00
Ralf Becker
5a22640c82 - changed return value of search() to NULL instead false, if nothing
found, as this can be simply casted with (array) to work in foreach
- documentation update
2009-05-03 18:36:38 +00:00
Ralf Becker
69171b7928 "image: using csv_split for options to allow options with commas, eg. filenames containing commas" 2009-04-30 08:07:25 +00:00
Klaus Leithoff
0439b8de35 handling checkbox values in listview, handling radio values display in listview 2009-04-29 14:29:57 +00:00
Ralf Becker
0930d0a739 new ajax_submit() function with submitts the whole form via ajax to a given callback 2009-04-29 14:15:35 +00:00
Ralf Becker
ee45dc8567 "fixed one byte to long key-size" 2009-04-28 15:36:51 +00:00
Ralf Becker
10c390a654 "allow 'test' in template name for application == 'test'" 2009-04-25 06:56:42 +00:00
Ralf Becker
affce3e5bc update to work with "new" translation class: class constants and static calls 2009-04-23 08:38:20 +00:00
Ralf Becker
e6762bf009 "fixed last commit r26803 \"allow to specify app in image name\":
thumbnails or other direct url's as image in buttons were no longer displayed"
2009-04-22 05:52:07 +00:00
Ralf Becker
aca05a32e3 using new check_load_extension function 2009-04-20 12:43:44 +00:00
Ralf Becker
107d5dbbe9 "added somehow missing png type, preventing thumbnails being displayed for png images" 2009-04-19 07:20:22 +00:00
Ralf Becker
1a8b605c17 method to create user friendly label for a mime type, eg. "PDF file (application/pdf)" 2009-04-18 09:53:36 +00:00
Ralf Becker
5e88f9b563 "allow to specify app in image name" 2009-04-17 07:27:12 +00:00
Ralf Becker
3c18478f86 - more docu for file selection dialog
- added mime type filter
- added more user friendly mime type names:
  application/pdf --> PDF file (application/pdf)
2009-04-17 06:28:19 +00:00
Ralf Becker
823a3ab4c0 "allow to disable one of multiple checkboxes" 2009-04-15 21:07:33 +00:00
Ralf Becker
6f34257730 "allow to specifiy an onclick handler for vfs widget (instead of using download-url or filemanager to display dirs)" 2009-04-15 21:06:41 +00:00
Ralf Becker
2b73958407 "title for ro-image of buttons" 2009-04-15 09:16:04 +00:00
Ralf Becker
68f15f6c5a "fixed bug reported on German list: all new calendar events in trunk are private" 2009-04-15 09:11:03 +00:00
Ralf Becker
95a0339cc9 "fixing the fix ;-)
addslashes does to much --> now quoting only quotes"
2009-04-09 12:44:56 +00:00
Ralf Becker
592488908e "fixed filemanger bug: actions dont work for filenames containing commas
--> allow to enclose comma-separated checkbox and radio-button option values in quotes (\"), so they can contain commas
eg. file-names containing commas in the filemanager"
2009-04-09 11:49:16 +00:00
Ralf Becker
bd8ba08bc3 allowing stream-wrappers to specify an other mime-type for directories 2009-04-08 09:54:13 +00:00
Ralf Becker
e33b55efa3 "- only show thumbnail for image types with support (eg. not for tiff)
- resolve symlinks for links"
2009-04-07 19:37:50 +00:00
Ralf Becker
73aeaa3cad "add link title only, if id is numeric" 2009-04-04 17:41:15 +00:00
Klaus Leithoff
3e0ff9b004 prevent strpos to fail, if lable is empty 2009-04-03 14:01:24 +00:00
Ralf Becker
f1855baac2 "fixed typo" 2009-04-03 13:27:01 +00:00
Ralf Becker
b7444a9598 "fix for bug #2025: Database error in Timesheet with selected view category/date" 2009-04-01 20:01:54 +00:00
Ralf Becker
bfab75389c "replace ambiguous auto-id with (an exact match of) table_name.autoid" 2009-04-01 13:01:16 +00:00
Klaus Leithoff
1f6bba4aba handling the doubling of select/multiselect -cfs in advanced search,, adding empty entry for radio-cfs in advanced search, allowing to edit readonly cfs when in advanced search. 2009-04-01 08:22:01 +00:00
Ralf Becker
1dbec93dc9 "fixed broken extended search in addressbook:
form get's summited via ajax (without the _FILES array), which caused the process_show for 'files' to stall the the ajax request
--> get's ignored now"
2009-03-30 16:36:25 +00:00
Ralf Becker
9937f44e5a "- using exceptions instead of die with function_backtrace --> gives nicer traces (specially with ajax)
- fixed typo in get_array"
2009-03-30 16:34:04 +00:00
Ralf Becker
7caeef71fd "Do NOT trim decrypted string, as it contains binary data (it is compressed) and can be demaged by that.
This might be a problem if a mcrypt alogrithm is used, that pad decrypted strings with \"\0\". (I tried rtrim($str,\"\0\"), but that still failed)"
2009-03-27 15:35:54 +00:00
Ralf Becker
4cbbbc3892 "upps" 2009-03-26 14:38:37 +00:00
Ralf Becker
4311a66215 "improved csv-export:
- use options to export values of select boxes
- use strtotime on not-numerical date or time values
- use specified number formats for int and float"
2009-03-26 14:25:41 +00:00
Ralf Becker
019dd988c8 fixed TranslationTools problem in trunk, caused by old copy of
solangfile in etemplate.
--> moved that now completely to etemplate
(Also updated the docu of TT a bit)
2009-03-20 09:02:41 +00:00
Ralf Becker
55d2aaa3ee Implemented symlinks for eGW's VFS:
- sqlfs can store now symlinks (implements symlink and readlink)
- vfs resolves symlinks before calling a mounted stream-wrapper
--> symlinks can be between different mount-points
- filemanger can create symlinks and follows them
- etemplate vfs_widget displays symlinks (to be improved)
Happy testing :-)
2009-03-19 20:12:35 +00:00
Ralf Becker
52db44fb83 make boetemplate::store_to_cache public (static) to call it from xul_io 2009-03-19 12:06:49 +00:00
Ralf Becker
85a93987a9 "etemplate_request class to store the request data in the filesystem
need to be explicitly enabled by setting: etemplate_request::$request_class = 'etemplate_request_files';"
2009-03-16 13:43:16 +00:00
Ralf Becker
486a32e86d Refractured eTemplate to use:
- the etemplate_request object which stores the request data in the
  a) session (as before) or
  b) compressed and encrypted in the form transmitted to the user
  Benefit of b) is that the session does not grow and the form can
  be submitted as long as the session exists, as we need no garbadge
  collection. Of cause more data needs to be submitt between
  browser and webserver. b) is choosen automatic if mcrypt and
  gzcompress are available, but can be turned off via setting
  etemplate_request::$request_class = 'etemplate_request_session';
- static class variables instead of the before used global ones
--> This new version of eTemplate is fully backward compatible with 1.6!
2009-03-16 12:58:24 +00:00
Ralf Becker
b8f6481688 not longer used 2009-03-15 15:08:21 +00:00
Ralf Becker
df134f3588 "removed prefered phone marker \"&#9829;\" from url, causing 9829 to be appended to the phone-number otherwise" 2009-03-12 11:41:58 +00:00
Ralf Becker
f61ffc2e5e allow to pass $extra_cols parameter from get_rows to search 2009-03-11 12:14:15 +00:00
Ralf Becker
10e7a6ba21 "get default for query parameter of 'link-entry' working again and documented it (stoped working with patch fromRegis Leroy) " 2009-03-07 11:05:59 +00:00
Ralf Becker
8abb78f918 "small change on the upload to be still able to detect failed uploads caused by to small upload_max_filesize
--> !empty($file['name]) && empty($file['tmp_name'])"
2009-02-26 14:42:50 +00:00
Ralf Becker
a5a28ad708 Enhanced file upload to allow user to upload multiple files by appending
[] to the name of the widget, eg. "upload[]". In that case attaching a
file adds an other file upload via javascript direct under the current
upload and etemplate returns an array of files (each with keys
'tmp_name', 'name', etc.).
2009-02-26 13:51:25 +00:00
Ralf Becker
684ad891b8 "fixed wrong template-name in export, if name contains variables" 2009-02-25 15:55:53 +00:00
Ralf Becker
a80c2f92c8 "vfs-mime: fixed empty filename always showed directory logo, now empty filename shows an empty cell" 2009-02-25 15:54:24 +00:00
Ralf Becker
587a3b92bc automatic fix / pad 0 based arrays with the required number of false
values, to match the number of header lines in the rows template
--> allows to customize the template (number of header lines) without
the need to patch the code
(fixed pm's element list with uses 2 header lines, but required exactly
one pad done by the old code)
2009-02-24 07:42:12 +00:00
Ralf Becker
bdcb10ea2d Enable etemplate to mark rows of a grid / table as part of the header or
footer to repeat them on each printed page.
2009-02-23 13:21:28 +00:00
Ralf Becker
38aa29a852 "making process_show public again, as requested by Raphael Alla
(there was no real reason to make it private, beside hiding it from public interfaces, as I thought noone else is using it)"
2009-02-16 08:36:56 +00:00
Nathan Gray
346f749219 Improve readonly handling when a link is specified 2009-02-04 17:17:40 +00:00
Klaus Leithoff
964e28a3d8 adapting regex for emailvalidation to accept single letter subdomains 2009-02-04 07:57:30 +00:00
Ralf Becker
3b962e7064 Allow to set an explicit name for a tab_widget: "tabs=one|two|three"
In the example the tab itself is named "tabs", with tabs "one", "two"
and "three". Therefore the name of the tab-widget (where the select tab
gets reported and used to disable a single tab) does no longer depend on
the available tabs. This allows for a deeper customization.
Examples on how to use it are in the next two commits: tracker and pm
2009-01-29 18:31:40 +00:00
Nathan Gray
d3d47af015 Fix bug where if there are multiple nextmatches on a page, and your default num_rows is not in the list (ex: 15), and you cause a nextmatch to submit (by changing a filter or num_rows), the num_rows of the next nextmatch to be processed will be cleared 2009-01-23 19:33:19 +00:00
Nathan Gray
4c5d771cde Don't use htmlspecialchars, it causes issues with mixed quotes. 2009-01-22 15:05:54 +00:00
Ralf Becker
1b4d236d4a New class extending so_sql handing all custom fields needs: reading,
saving, searching, ordering and filtering
Makeing a full custom field implementation like in addressbook very easy
and quick
2009-01-17 03:36:58 +00:00
Nathan Gray
db48c553ab Fix # more... line at the bottom when there are more results that are not displayed 2009-01-07 16:47:00 +00:00
Nathan Gray
66bb41b065 Check to see if the value is a string before we try to lowercase it, strtolower() doesn't like arrays. 2008-12-09 16:02:01 +00:00
Nathan Gray
dd749ffa6e Add special handling for query values of 'false' (the string) to convert them to false (boolean) 2008-12-05 21:27:12 +00:00
Ralf Becker
340e369e04 "fixed changed constructor name" 2008-11-27 10:31:19 +00:00
Ralf Becker
d4a01c41f3 "fix not working nextmatch widget in tracker, readonly detection was uncomplete ($readonlys can be an array!)" 2008-11-17 10:41:33 +00:00
Ralf Becker
aa4d4c3d0f "fixed typo prefenting sel_options set in get_rows to be displayed" 2008-11-16 07:20:23 +00:00
Ralf Becker
343ff1d77d "fixed eTemplates garbage collection to work with new session class, and lowed timeout of not used sessions to 30min (was 1h)" 2008-11-13 17:20:53 +00:00
Ralf Becker
33d617aa8f "stop storing rows content in session by using an empty new var $rows in calling the get_rows funktion:
get_rows($value,$rows,$readonlys) instead get_rows($value,$value['rows'],$readonlys)  
because $values['rows'] as reference would be stored in the session, when apps store $query parameter in the session
"
2008-11-13 16:55:03 +00:00
Ralf Becker
d61c1af60f "dont set unneeded extension data" 2008-11-13 16:50:05 +00:00
Ralf Becker
a921812095 "only supply extension data for non-readonly widgets or if it's already set
otherwise lists store >10k unnecessary data in each etemplate-session"
2008-11-13 16:49:44 +00:00
Ralf Becker
d28f6f672c - fixed url recreation for links (use ? for get-params, if no ? in the
link)
- made bo_tracking abstract
- added default return null to bo_tracking::get_config and removed it
  from extensions implementing no config
- fixed signature of get_config($name,$data,$old=null)
2008-11-08 10:37:52 +00:00
Ralf Becker
f713c095b2 "fixed link_widget to link-entry widgets and application type custom fields working again" 2008-10-27 13:26:43 +00:00
Ralf Becker
fa6ab9b7a1 "fixed lost right align in nextmatch sort headers, if they are active" 2008-10-22 07:06:45 +00:00
Ralf Becker
e54f9ee079 Fixed encoding problems in WebDAV and vfs:
- egw_vfs::download_url as not encoding + or ' ' in pathes
- HTTP_WebDAV_Server was urldecoding $_SERVER[PATH_INFO], which is
  wrong, as it is NOT encoded
- HTTP_WebDAV_Server was NOT urlencoding the pathes in PROPFIND
  responses, causing eg. cadaver not to be able to use dirs containing
  + or space
2008-10-21 11:57:26 +00:00
Ralf Becker
a749233461 "removed call to depricated bolink class" 2008-10-21 08:08:56 +00:00
Ralf Becker
273bd722e2 fix for bug #1739: config for CSV export for non-admins is not working.
Reworked it not in the following way:
- numerical limit or total disabling (setting "no"), are only valid for
  non-admins
- addressbook has it's own value, but uses now the global one, if no
  addressbook specific limit is set
2008-10-16 11:17:49 +00:00
Ralf Becker
4520f9e9ce "fix from Regis Leroy to allow to set some extra query parms from the calling application" 2008-10-10 07:58:59 +00:00
Ralf Becker
bb1ed52c7f updating version and dependencies for 1.6 2008-10-07 18:04:59 +00:00
Ralf Becker
9e85c8e343 renamed uietemplate to etemplate, to save unnecessary include, as gtk isnt used in a long time 2008-10-07 09:14:17 +00:00
Stefan Becker
858485ad30 "fixed Bug #1663 'More News' not visible in sitemgr when limit is 1, -> so_sql, is now giving back the numbers of total" 2008-10-07 08:17:09 +00:00
Ralf Becker
071fb06b8a no translation and no word-wrap for vfs (filename) widget 2008-10-07 05:33:27 +00:00
Ralf Becker
0218ffb751 - new vfs-widget to encapsulate common vfs/file related stuff
+ path with clickable components
  + human readable size, mode, ...
  + mime icon with integrated thumbnail creation
- link widget uses now vfs-mime for it's icons
- thumbnail creation is now switched on with size 32px by default, it can
  be switched of by the admin or user, in doing so explicitly
- mime-icons are moved from filemanager to etemplate, as not everyone
  installs filemanager
- filemanager has now 3 display modi:
  + Current directory (with subdirs always on top)
  + Subdirs sorted in
  + Files from subdirs (shows recursive all files and you
    can click on the path components thanks to new vfs widget)
2008-10-06 17:43:42 +00:00
Ralf Becker
d6693b27ab "formatting" 2008-10-06 10:05:56 +00:00
Ralf Becker
f64c51778b "nextmatch filter- or sort-headers can now made to nextmatch-headers (label only), by making them readonly" 2008-10-05 16:56:37 +00:00
Ralf Becker
0e62b50197 Ok, found thumbnail problem:
- size need to be configured in admin >> site config
--> disable no pref to display thumbnail if admin did not configure size
--> fixed last commit to use configured size for thumbnails
2008-10-04 07:59:43 +00:00
Ralf Becker
62d7b78c45 Removed an (unnecessary) table from the link list and removed direct
html stuff. 
@Nathan: there's a problem with the thumbnail generation
2008-10-04 07:36:26 +00:00
Ralf Becker
a603c8bb2e "correctly quoting the id's in ajax_search, as single quotes otherwise mess up the javascript in the ajax response (eg. caused by single quotes in Wiki Page Names)" 2008-09-24 11:16:26 +00:00
Ralf Becker
a1a3ed0d35 "use egw_db::select instead of self::search in so_sql::not_unique() as it does NOT set this->data" 2008-09-22 16:00:45 +00:00
Ralf Becker
9d9fc41658 "hopefully last fix for Raphaels patch ;-)
if readonlys[__ALL__] is set, also set readonlys[$name] (but only then as for extensions (eg. tabs) $readonlys[$name] can be an array!)"
2008-09-22 09:28:01 +00:00
Nathan Gray
c1e89c5f0a Keep the returned readonly value from the extension 2008-09-19 13:35:29 +00:00
Nathan Gray
7b01f31d7d Readonly parameter is pass-by-reference, can't be an expression 2008-09-17 14:47:47 +00:00
Ralf Becker
74d78f5dbe "1. two patches from Raphael Alla:
- expand onchange before calling extensions pre_process method
- additionl evaluate $readonlys['__ALL__'] in calling extensions pre_process method
2. replaced {} as array-operator in string with []"
2008-09-16 05:41:33 +00:00
Ralf Becker
b195ac76e2 refractured infolog code to create links to custom field link types 2008-09-11 14:57:20 +00:00
Ralf Becker
0f0b5c9639 fixed old "'%1' is NOT allowed ('%2')!" error:
the ajax search now opens the pending eTemplate request and stores the
new allowed id's from this search
2008-08-30 11:17:04 +00:00
Nathan Gray
044cc0f679 Last piece needed for multiple nextmatches / page. 2008-08-21 18:09:20 +00:00
Ralf Becker
037704a801 "php5.1 seems to have a bug: array_slice($parts,$offeset) != array_slice($parts,$offeset,null)" 2008-08-16 07:40:04 +00:00
Klaus Leithoff
ab37be5fba fix for php warning empty haystack ... in line 967 2008-08-08 09:26:36 +00:00
Ralf Becker
e3c60d8243 "only check if $name is a string" 2008-08-01 15:36:31 +00:00
Ralf Becker
3fa1859f70 "- input fields can be now also made readony by specifying the parent ($readonlys['set'] make eg. $readonlys['set[whatever]'] r/o)
- allow extensions to re-enable readonly widgets by setting $cell[readonly] = false "
2008-08-01 15:34:13 +00:00
Ralf Becker
32eb1bafa6 "fix for bug #1643: %t in phone numbers (telephony intergration) does not work" 2008-07-30 11:08:51 +00:00
Ralf Becker
c1c52cf797 reworked the size limitation for displaying email or url again a bit 2008-07-14 06:29:57 +00:00
Nathan Gray
98eb1f18cc Escape ID field as well, in case there's something special in there too 2008-07-02 19:43:50 +00:00
Ralf Becker
70052c8355 fixed SyncML and accounts problem reported by Phillip Herbert <pherbert-at-knauber.de>: update set all but the updated fields to NULL, instead of just updating the given fields 2008-07-02 15:25:54 +00:00
Ralf Becker
b17df8df9b fixed not working imagemap (clickable milestones and bars in ganttchart) for firefox3 and ie, thanks to ae275-at-CAM.AC.UK from the English user list 2008-06-30 14:35:51 +00:00
Klaus Leithoff
7921ef5767 # support for size options in url customfield
# support for size options in url-phone customfield
# support for size options in url-email customfield
# allowing additional parameters to be passed to the link created from the url-email
2008-06-30 14:30:16 +00:00
Ralf Becker
b3b53c2f87 "treat (space separated) words in search as or'ed search for them individually" 2008-06-26 16:08:47 +00:00
Ralf Becker
5679bdd5f6 "allow to overwrite readonly settings of a cell" 2008-06-26 11:38:31 +00:00
Ralf Becker
eb290477dd "get the new url, email or phone cf's working" 2008-06-24 09:56:39 +00:00
Ralf Becker
a4133ab894 "temporary disabled additional nextmatch row on the bottom of the list for php5.2.6, until I find time to fix it" 2008-06-23 06:46:58 +00:00
Ralf Becker
03d9baf5c6 "fixed warning under php5.2.6" 2008-06-22 08:51:38 +00:00
Ralf Becker
f66e2e4004 fixed php5.2.6 problem: unknown type '' 2008-06-22 07:16:40 +00:00
Ralf Becker
23c473690e "removed accidently commited 2. patch" 2008-06-19 16:07:57 +00:00
Ralf Becker
b89e7b46a1 "fixed not working install (segfault) caused by account creation in sitemgr's default_records and the new uid code in addressbook_sql::save() going into an invinit recureing, because so_sql::update calls $this->save() instead of self::save()" 2008-06-18 19:56:26 +00:00
Klaus Leithoff
09abb185f9 # improving of the negated search criteria behavior 2008-06-17 07:28:35 +00:00
Ralf Becker
2b6f25b7f3 added popup size for phone integration and better sanitizing of phone numbers 2008-06-11 07:18:29 +00:00
Ralf Becker
c0ec512113 new widget for urls, email-addresses and phone numbers (displaying them r/o as links like in addressbook) 2008-06-11 06:29:41 +00:00
Ralf Becker
2e77c2a4c6 "a little bit nicer implementation" 2008-06-11 04:20:39 +00:00
Ralf Becker
c57b02c59f "allow to have more then one nextmatch widget on a page, for nathan and pERP :-)" 2008-06-11 04:05:10 +00:00
Ralf Becker
6b74d6ad88 "switched permanent debug message off again" 2008-06-04 05:26:52 +00:00
Ralf Becker
20fe4703ab "removed 1.2 compatibility code" 2008-06-03 06:22:35 +00:00
Ralf Becker
c34dc55633 "fixing the fix: only add primary key, if it's NOT an auto id" 2008-05-30 08:20:06 +00:00
Ralf Becker
b6be2fb249 "bugfix: not_unique() method was not working with unique indexes over multiple columns and was not testing the primary keys, with is also unique" 2008-05-28 12:17:06 +00:00
Ralf Becker
ae044a9a08 allow to instanciate the historylog with a given user or 0 for
changes by the system itself (eg. async service). bo_tracking passes on
it's user param of the constructor.
2008-05-27 09:25:25 +00:00
Ralf Becker
78dd1cdf03 missed new $no_clone parameter 2008-05-26 08:32:27 +00:00
Ralf Becker
83a250e085 php5 __construct plus old old class-name method calling the new constructor, added non_db_cols to __get() and __set() 2008-05-26 08:27:24 +00:00
Ralf Becker
1f144e4670 "colspan='all' was only working in the first grid of the template" 2008-05-24 08:42:43 +00:00
Ralf Becker
c45e0ee9fe "- fixed sometimes not working delete of a column (seems to be php5 related, as it was working before)
- removed one idention from tables_{current|update}.inc.php
- removed closing ?> tag"
2008-05-24 06:39:05 +00:00
Ralf Becker
6c1dcb430d "unit was missing for readonly values" 2008-05-20 12:21:53 +00:00
Ralf Becker
b69b8085e6 Fixed some problems with the etag handling, causing an SQL error on
merging contacts, as reported by Johannes Gorschlüter from Stylite
2008-05-17 06:44:17 +00:00
Ralf Becker
c74789fc2c "removed unnecessary instanciation of old bolink class" 2008-05-15 12:41:20 +00:00
Ralf Becker
31f71a54e2 "fixed syntax error reported by uwe.redecker(at)hspl.de" 2008-05-13 05:56:00 +00:00
Ralf Becker
4885518b88 autoloading of addressbook classes 2008-05-10 12:06:15 +00:00
Ralf Becker
d58ddd9999 "allow to insert rows with the auto-id specified" 2008-04-27 20:05:04 +00:00
Ralf Becker
163b795d45 "extra where condition, eg. to check etag on writing" 2008-04-26 07:49:01 +00:00
Ralf Becker
4048c304d7 "using the configured temp directory for uploaded files" 2008-04-24 13:59:47 +00:00
Ralf Becker
f40cfd935d "using the configured temp directory for uploaded files" 2008-04-24 13:55:12 +00:00
Ralf Becker
0cdfc90f61 "using egw_vfs::mime_icon()" 2008-04-22 20:33:42 +00:00
Stefan Becker
82e4a81bc8 "" 2008-04-22 08:42:31 +00:00
Ralf Becker
ea7ea8deb6 modifications for the links via the new vfs/links stream wrapper 2008-04-16 19:53:20 +00:00
Ralf Becker
5fd2d8def8 removed unnecessary instancations and using static methods of html and egw_link class 2008-03-25 16:42:23 +00:00
Ralf Becker
b550aeecf5 "fixed typo" 2008-03-22 09:31:23 +00:00
Ralf Becker
84c1ac74f0 removed unnecessary instanciations 2008-03-21 20:54:28 +00:00
Ralf Becker
add5646e48 fixed a few errors in the etemplate editor 2008-03-20 18:43:11 +00:00
Nathan Gray
186d0ad967 Fix missing readonly parameter reported by randy houlahan, and pass it to the template 2008-03-20 16:18:15 +00:00
Ralf Becker
ef43425f7f allow to use global db-object (and no clone&set_app), if told so via a separate parameter to the constructor (not by default as the app using so_sql might not be ready for it) 2008-03-13 11:08:54 +00:00
Ralf Becker
694dbc443b some more php5 and html static fixes 2008-03-10 15:54:21 +00:00
Ralf Becker
6e9829faf6 some more php5 and html static fixes 2008-03-10 15:49:46 +00:00
Ralf Becker
9993be3eed "make etemplate::_sel_options() public again, as it's used by other widgets (eg. tree_widget), thank to webmaster-at-kmu-tools.de " 2008-03-10 06:50:02 +00:00
Ralf Becker
e6d99f37e9 "but test_import and import_dump is ..." 2008-03-09 15:54:52 +00:00
Ralf Becker
4b60cbf95f "UPPS compress_array is NOT static" 2008-03-09 15:48:21 +00:00
Ralf Becker
e90a3d3a83 reworked etemplate to have static methods and use the new features of egw_db- & html-class 2008-03-09 14:41:22 +00:00
Ralf Becker
0da675bf6e made all methods from html class static and removed the unnecessary singleton 2008-03-09 14:35:48 +00:00
Ralf Becker
37c3933e0b using new egw_link class with static methods 2008-03-08 21:41:59 +00:00
Nathan Gray
09556f8fb0 Preserve ajax_select_widget options across a loop 2008-03-07 17:47:06 +00:00
Ralf Becker
60a65bb560 Added an id tag to templates, contact and infolog widget
New js_pseudo_function to fetch the styles of a template:
template::styles('template.name')
2008-03-05 18:38:46 +00:00
Ralf Becker
c1647bfcbf added a get-parameter "empty_post=1" if process_exec redirects to the app, because the _POST array is completly empty. That happens if post_max_size <= max_upload_size and is neccessary to give an adequte error-message about the failed upload in filemanager. 2008-03-04 16:56:19 +00:00
Ralf Becker
233875a181 "using ungreeded search for egw::lang()" 2008-03-03 05:47:12 +00:00
Klaus Leithoff
5f9104250b fix for the optgroupfeature, which messed up some callback checking (validation) of the selected values.
This is since the assumption of being an array as value of the selectkey is a sufficient marker to recognize an optgroup 
does not always match for optgroups only. Projectmember roles dialog employs select options with label/title arrays as value
2008-02-27 15:48:52 +00:00
Klaus Leithoff
d349ffed88 ouch, forgot a closing bracket, ... 2008-02-14 07:46:18 +00:00
Klaus Leithoff
ee3377d1f2 small bugfix for a bug/phpwarning (empty haystack...) appearing occasionally while building up templates 2008-02-14 07:40:16 +00:00
Ralf Becker
ea2c699f5c allow the link-query method of an app to set further attributes of the option used to display the entry, eg. a title (tooltip) of a certain entry: instead of id => title pairs, you return eg id => array(label=>title,title=>tooltip) like for html::select or the select widget 2008-02-07 02:54:11 +00:00
Klaus Leithoff
09612e4f58 documented the feature (week+dow) accordingly 2008-02-05 15:41:41 +00:00
Klaus Leithoff
20fccf9bf6 prepare the date widget to output a very long dateformat (week + dow) 2008-02-05 15:34:07 +00:00
Christian Binder
5b699573e4 enabled class autoloading for notifications, let admins enable or disable notification backends, security fixes for email and egwpopup backend, unified link arrays used for notifications 2008-01-30 18:58:00 +00:00
Ralf Becker
3f3954440d "fix for optgroup's, eg. used in addressbook now" 2008-01-26 01:24:42 +00:00
Ralf Becker
ced6adf23f reworked and generalised Klaus new custom field header feature, to use it in the addressbook too, easy to addapt for the other apps now, only requires the get_rows/search method to understand filter and order_by with cfs 2008-01-19 05:36:20 +00:00
Ralf Becker
1d54ae791c ability to specify a comma-sep. list of cat_ids as row-class, to color the rows by the color of the cat, first match used 2008-01-19 05:34:14 +00:00
Ralf Becker
e40d73091b new time-since sub-widget 2008-01-09 01:57:45 +00:00
Ralf Becker
21465c8c93 some more js pseudo functions and docu 2008-01-09 01:56:42 +00:00
Ralf Becker
4d4d66ea9c Allow 00:00 times or 0h in date-(time|hour)only widgets, by differing
between 0 and ''/null
2007-12-20 03:08:07 +00:00
Ralf Becker
18790b1362 ability to specifiy a suffix for select-numbers, to eg. add "h" to the label of each option 2007-12-16 23:13:32 +00:00
Klaus Leithoff
e72c783fd4 pre_process_cf_header -> created by Ralf Becker!!!
function to display the customfields in a nextmatch table-header with the functionality of sorting and selecting
by customfields. Of cource you need to adapt the source of your get_rows or search functionality to do the
actual sorting and selecting. We try to do some additional documentation in codecorner
You can pass the allowed/wanted fields to the header by passing an array of the wanted fields to the widget
through the options parameter (see the eTemplate editor for fields/cells). This array is passed on through
$cell['size']. By now the array passed through is only working, if it is the only entry in the optionsparameter.
The allowed fields array assumes an numerical indexed array of (an) array(s) with ['name'] tag(s) set.
The name provided assumes a preceding #. (e.g.: $allowed_fields[x]['name']='#MyCustomField')
2007-12-13 15:36:44 +00:00
Christian Binder
bfff821e18 notification-app is now ready for non-eGW users as sender and recipients. deleted the old-style sending part from bo_tracking. this is not needed anymore. 2007-12-10 08:26:29 +00:00
Ralf Becker
cbf94ab243 mark required input fields visually (darker border and light yellow background) 2007-12-09 08:11:55 +00:00
Ralf Becker
e13da61106 "fixed single field display of customfields, was creating an extra grid and array level in the result" 2007-12-07 07:52:14 +00:00
Ralf Becker
03f786390d "fix to display readonly link-entry without id empty (showed text search)" 2007-12-06 22:17:08 +00:00
Christian Binder
15e9c36ca6 removed option for sending html mails or not cause this is decided now by the notification backends (as discussed on the list) 2007-12-05 09:05:57 +00:00
José Luis Gordo Romero
e74c6debaa Reverting the not working (sorry) fix till notifications gets updated to recieve non-accounts in the sender 2007-12-04 17:35:17 +00:00
José Luis Gordo Romero
f7255ea33c Fix sender in bo_tracking (was using this->user not ->get_sender) 2007-12-04 05:12:20 +00:00
Ralf Becker
33b2504316 "Added code to convert timestamps to so_sql.
If you want to use it, you only need to set the timestamps to be converted from user to servertime in so_sql::timestamps AND dont reimplemnt db2data/data2db (or call the default implementation)"
2007-12-04 01:13:53 +00:00
Christian Binder
18cfa84d00 make tracking class aware of possibly missing notification app. if notification app is missing, send a mail, like we did it the old-style before. this behaviour gets changed if notification app is ready for sending notifications to external users. 2007-11-29 18:38:17 +00:00
Ralf Becker
510d1e786e "marking auto columns automatic as primary key and not null" 2007-11-29 06:50:25 +00:00
Ralf Becker
fb9d6db5be "fixed so_sql::get_rows to return an empty array() instead of array(false) if nothing found" 2007-11-27 21:24:50 +00:00
José Luis Gordo Romero
b675c2b65b Fix regresion introduced by r24154 (the send object is newly created for ever
mail, til this get fixed in PHPMailer)
2007-11-27 15:05:14 +00:00
Klaus Leithoff
2a498cae0a Merge of Ralfs customfield commit, with the customfield changes for 1.4: to display only fields with values in listview and to have an info icon to
identify which customfield is displayed (onmouseover), a click on the icon of the customfield opens the description of that field as 
alertbox. Also added the possibility to set an textfield/textarea to readonly with the option readonly=readonly, so users may not be able to change 
values of e.g.: external keys
2007-11-27 15:03:54 +00:00
José Luis Gordo Romero
43d3ee1cf3 Little change to allow mixed (ascii & html) widget, all controll by htmlarea
parameters
2007-11-27 05:49:25 +00:00
Ralf Becker
1258b12e91 "small improvment of the last commit:
- also lookup the custom fields from the app mentioned in the template, if there no cfs for the current app, eg. sitemgr contactform
- forward the needed attribute to the cf
- alignment (no spacing, padding) if there are no labels"
2007-11-26 17:35:29 +00:00
José Luis Gordo Romero
3d9111ff69 Fix notify_current_user action in send_notifications (set by pref in botracker) 2007-11-25 08:14:50 +00:00