Ralf Becker
55f5a80a5e
refining regular expressesion for PHP variables (replies[$row][reply_message] returned more then $row) and removed quoting from submitit call in button, as quotes in vars get quoted double
2010-05-12 07:50:13 +00:00
Ralf Becker
dbf8a15b55
"disable permanent error_log"
2010-05-11 18:12:55 +00:00
Ralf Becker
fd56fb27c3
Correct quoting of special chars in vfs:
...
- # has special meaning in url and is intern always urlencoded as %23
- ? has special meaning in url and is intern always urlencoded as %3F
- % need to be urlencoded as %25, as it's the escape char in urlencoding
(it has not been stored urlencoded in sqlfs so far, there's some
workaround in filemanger_ui to deal with the old unencoded % chars)
- space and + are NOT urlencoded in sqlfs in the DB, they get urlencoded
only for download urls
- " get urlencoded for download urls only as it messes up the html
markup
--> Filenames get urldecoded, before displayed to user
- done manually eg. in messages
- done automatically in new vfs-name widget (both ways)
2010-05-11 15:02:30 +00:00
Ralf Becker
2d0c33bb90
Some more quoting (and unquoting) of quotes in variable used eg. as
...
button names: eg. "delete[$row_cont[path]]" with path containing " or '
- they need to get quoted for correct html markup
- etemplate_request::set_to_process() need to use unquoted version, as
this is how it get returned in $_POST
2010-05-11 14:52:45 +00:00
Ralf Becker
db23b1d746
- correctly quote single and double quotes in html element id's
...
- correctly quote quotes in parameters of javascript functions used
eg. as eventhandlers, eg. onchange="do_something('$cont[name]');"
--> if $cont[name] is an array: do_something([ 'val1', 'val2' ]) is used
- correctly quote & in get parameters of url's
2010-05-09 14:06:35 +00:00
Ralf Becker
4ecc2c0360
"allowing (at least) German umlauts in domain names"
2010-05-06 08:02:32 +00:00
Klaus Leithoff
ed040955bb
prevent foreach warning, when & is not an array
2010-04-27 10:37:50 +00:00
Nathan Gray
f47cced6ed
Fix for Postgres DB error loading eTemplate from Yudhi Kusnanto
2010-04-25 23:47:16 +00:00
Jörg Lehrke
334a8c6fc3
Fix addressbook_bo::find_contact()
2010-04-21 17:41:34 +00:00
Nathan Gray
6c3ba68ca1
If only_keys is true, expand it in so_sql_cf so the table_name can be prepended. Fixes last part of #2543 , adding link when importing mail to infolog
2010-04-21 15:40:58 +00:00
Klaus Leithoff
69da1000b2
if only keys is passed to search return only the DISTINCT result-set (was not implemented when only_keys where passed as array)
2010-04-21 12:14:04 +00:00
Klaus Leithoff
7a4f191fb3
fix to provide (return) data even if a shortname is used as column name
2010-04-20 13:58:01 +00:00
Ralf Becker
423dbbc567
"an other fix: if there's already an explicit named column, just use that name"
2010-04-20 08:12:22 +00:00
Ralf Becker
765a1d5c09
"fixed not returned (explicitly given) columns: you need to use $table.'.'.$col.' AS '.$col, without AS column get NOT returned as name is different"
2010-04-20 07:39:23 +00:00
Klaus Leithoff
a9fd21325d
fixing a bug, when trying to sanitize possible ambiguous columns
2010-04-16 10:35:09 +00:00
Nathan Gray
2aed9e476f
Fix copy/paste error to get address merging working
2010-04-15 14:56:37 +00:00
Klaus Leithoff
1ec94a70fe
set cat_app with value from get_row (, if not set) to ensure the cats of the template/listview in question are to be loaded
2010-04-12 07:23:21 +00:00
Nathan Gray
549626cbf9
Add some extra handling for potentially ambiguous columns in
2010-04-08 22:13:22 +00:00
Nathan Gray
215da11fae
Add some extra handling for ambiguous columns
2010-04-08 20:21:40 +00:00
Nathan Gray
79dfab8005
Custom field widget can be limited to (or exclude) certain fields. Put the list of fieldnames to display as the 3rd (4th, etc) option. Using a ! as the first character will negate the list, and exclude the named fields.
2010-04-07 17:00:09 +00:00
Nathan Gray
97727d41ce
Fix filtering on a multi-select custom field. Any entry with the filter value will be included.
2010-04-07 16:06:01 +00:00
Ralf Becker
f2e9a38ff4
"fixed ambiguous column sql-error by adding table-name to id over which we join"
2010-04-04 09:08:25 +00:00
Ralf Becker
a45ea03b19
"fixed ambiguous column sql-error by adding table-name to id over which we join"
2010-04-04 08:59:37 +00:00
Nathan Gray
5e23cfb764
Working on searching...
...
- Check default column names to avoid DB errors
- Prefix default column names with table name to avoid ambiguity
- Handle single words in quotes
2010-04-01 20:48:16 +00:00
Nathan Gray
93cf9c2e84
Don't need to pass ->extra_value, search2criteria() will take care of it
2010-04-01 20:20:08 +00:00
Nathan Gray
4b134dfc9e
Extra column check needs to be escaped
2010-04-01 20:19:28 +00:00
Nathan Gray
fa6c1d4a9c
Need to set numeric types to check
2010-04-01 20:07:01 +00:00
Nathan Gray
d22773d04d
Add extra search functionality to custom fields.
2010-04-01 19:59:50 +00:00
Nathan Gray
3d8fca332b
More sensible handling of numeric columns:
...
- If app doesn't specify columns to search, all columns except numerics with '_id', 'modified', 'modifier', 'status', 'cat_id', 'owner' will be considered
- Numeric columns will be searched only if the search string contains a numeric token. 'maintenance 50' is ok to search for, but for numeric columns only 50 will be searched.
- Numeric columns are searched using equality, unless user puts in a wildcard. Searching for 50 will only match 50, not 150 or 1950/04/10, but *50 will match 150.
- Text columns are searched using LIKE, including numeric search terms, as before.
2010-04-01 17:03:51 +00:00
Nathan Gray
cc0f8f3c28
An attempt to add more functionality to searching
...
- All words are trimmed
- Double quotes require the exact phrase ("Nathan Gray" will not match Nathan Brown or Gray Power)
- Modifiers + and - before a word will require or exclude the word (+test -fail), otherwise word is ORed
- User language modifiers AND, OR and NOT (uppercase) will be parsed.
- Combinations: tracker entry -testing -"fatal error"
Note that "entry" will not match "entries", and the results are not sorted by match strength.
All applications that use so_sql for searching should gain these benefits.
2010-03-31 21:29:11 +00:00
Ralf Becker
a858db5eb8
"for iPhone and Android: replace evtl. configured telephony integration link with tel: protocoll"
2010-03-28 13:33:40 +00:00
Ralf Becker
c60a1ad94d
"for iPhone and Android: replace evtl. configured telephony integration link with tel: protocoll"
2010-03-28 13:27:30 +00:00
Ralf Becker
99a9132cd5
"fixed not working activation of tab with different prefix"
2010-03-23 19:34:40 +00:00
Ralf Becker
71960a6d02
Fixed some more php53 Warnings after latest fix_depricated.php
...
improvment.
2010-03-21 09:37:52 +00:00
Ralf Becker
4cc9586e39
xajax uses xml to transport the label, therefore we have to replace not only CR, LF (not allowed unencoded in Javascript strings) but also all utf-8 C0 and C1 plus CR and LF
2010-03-19 13:05:20 +00:00
Ralf Becker
6c7e9b0062
fixed regular expression to NOT "eat" 8 and , from merge print replacements
2010-03-16 13:38:20 +00:00
Klaus Leithoff
d9c39caf7e
removing possible CR/LF from content for ajax search result javascript, as it breaks the options
2010-03-15 17:17:33 +00:00
Ralf Becker
bb580029c1
"fixed handling of linebreaks from text and rich text fields for xml based formats (Open Office and MS Office)"
2010-03-08 21:56:05 +00:00
Ralf Becker
3f8da06a9e
"replace all control chars (C0+C1) but CR, LF and TAB (eg. vertical tabulators) with space as they are not allowed in xml"
2010-03-08 11:34:22 +00:00
Ralf Becker
83b60b81fc
Fixed r29141: "Add a checkbox to allow user to prevent notification of
...
changes to a ticket", to NOT prevent history logging, if checked
2010-03-07 14:45:12 +00:00
Ralf Becker
3eb38935bb
caching etemplates using egw_cache class on instance level (instead off old not egw_cached based code on request level), to ease the load on the db
2010-03-05 08:18:46 +00:00
Ralf Becker
0f2eceefb8
Preseed link title-cache for link-list and link-string widget
...
(Performance improvment, as all titles of an application get queried in
a single query and NOT once for every link)
2010-03-04 17:07:10 +00:00
Nathan Gray
4424d49c30
Handle case when ID is missing, happens the time after clearing the cf search
2010-02-22 22:46:17 +00:00
Nathan Gray
48886af55c
Blur text can affect regular searches, not just array searches
2010-02-22 20:56:59 +00:00
Ralf Becker
3aa96a4a34
for xml: decode all entities, remove all non-decodable entities, remove all html tags and encode <, > and & as entities
2010-02-21 23:15:05 +00:00
Ralf Becker
ab598b8fcb
fix for user changing the timezone while having an edit popup open (unfixed the timestamps would change by the differenz of the two timezones). This fix does eg. NOT fix history logging (depending on the entry read before saving it), so it is better to handle the situation in the UI code, thought this is better then not handling it at all
2010-02-17 00:55:43 +00:00
Ralf Becker
39666ba03b
let link-entry display "appname: #id" for entries no link title is available (eg. because they got deleted), makes sense eg. for history logging
2010-02-16 23:23:24 +00:00
Nathan Gray
42bd4d227c
Upgrades to historylog_widget:
...
- Allow array for options of a 1:N record, as documented in bo_tracking
- Allow passing in a filter parameter, and pass it on to historylog->search
2010-02-12 18:34:33 +00:00
Nathan Gray
9bf462d616
Add check for blur text left in
2010-02-09 18:07:53 +00:00
Nathan Gray
fc1328fae8
Fix path problem where js couldn't be found
2010-02-09 16:34:34 +00:00
Jörg Lehrke
b75f5f9828
Change default timezone for tracking->datetime() to server-time
2010-02-05 16:41:04 +00:00
Ralf Becker
bba515d2e2
added upload failed message also to vfs-upload widget
2010-02-05 04:09:17 +00:00
Ralf Becker
6fb9ae3a6d
moved failed upload check from filemanager to etemplate and further improved it
2010-02-05 02:54:47 +00:00
Jörg Lehrke
75746226a4
Use egw_time for InfoLog, tracking backend and Tracker
2010-02-04 12:08:03 +00:00
Klaus Leithoff
807b72aa93
feature: resize etemplate popups, that they may fit into the window
2010-02-03 14:11:16 +00:00
Ralf Becker
958452ff95
Implementation of global categories limited to a certain group:
...
- from user perspectiv they are global cat like the existing ones
(also comming in two flavors: global or for a certain app)
- admins can select to limit a global cat when they create it
--> all members of a given group have the cat as a global one
==> This does a silent modification of the categories table:
global cats get changed from cat_owner=-1 to cat_owner=0 !!!
2010-01-31 03:36:01 +00:00
Ralf Becker
e73dcb2a27
fixed colorpicker (as not using current color) and added colorpicker widget to etemplate
2010-01-30 23:55:36 +00:00
Ralf Becker
25c29211f5
adapting for changed categories class
2010-01-30 23:54:08 +00:00
Ralf Becker
6b5976ba82
fixed not displayed custom field type "link-entry"
2010-01-24 00:03:41 +00:00
Hans-Jürgen Tappe
4a709b2024
Fix typo.
2010-01-22 21:18:45 +00:00
Nathan Gray
7c72754631
If an option is null, don't keep it because it may get turned to an empty array.
2010-01-15 16:10:55 +00:00
Ralf Becker
369161d91f
allow to use \n in confirm messages to format the question
2010-01-15 01:10:15 +00:00
Ralf Becker
3ce3cde916
fixed in wrong order displayed sub-categories
2010-01-13 06:31:52 +00:00
Nathan Gray
d889e92774
Add AJAX Select widget as a field type for custom fields.
...
Select options can be provided using one of three different methods:
1. key=value pairs, one per line, as for a selectbox
2. @filename.php - The file must be in the egw root, and define an array named $options, that has key => value pairs
3. Define the options normally used for the AJAX Select widget (get_rows, get_title, id_field) and it will pull values from the database, as normal.
Other options (icon, filter, template, link) can be used regardless of the method used to get the values.
2010-01-12 22:35:51 +00:00
Ralf Becker
cc5c917832
fixed static get_rows callback for php5.3, it is working for all php versions, thought from 5.2.3+ it is a static call AND always calls $query as a var parameter!
2010-01-11 23:37:39 +00:00
Stefan Becker
ddd1a2176c
"fixes Problem with pagerepead and multipe Adresslabels on one page"
2009-12-30 13:59:08 +00:00
Ralf Becker
7e754c28c1
hack to get Excel 200X to display additional rows in tables
2009-12-27 23:51:25 +00:00
Ralf Becker
fdf4dcb9b9
fixed not working $$time$$ and $$date$$ placeholders, by using egw_time::to() and deprecating format_datetime()
2009-12-24 02:00:51 +00:00
Stefan Becker
5a4c77bcf3
"fixed Problem with span and Linefeed"
2009-12-21 10:47:02 +00:00
Oscar Manuel Gómez Senovilla
ef7ff3d6b3
Fix pending hardcoding for new translations
2009-12-14 21:11:05 +00:00
Nathan Gray
28b3dde6ec
Change how type is passed to use the new link query options parameter
2009-12-07 21:44:04 +00:00
Ralf Becker
de2589963a
"fixed warning of not writable lang directory to cater for new location"
2009-12-03 16:45:51 +00:00
Ralf Becker
13cb41a882
"allow for office2003 (application/xml) $$pagerepeat$$ and some cleanups"
2009-12-03 16:15:23 +00:00
Oscar Manuel Gómez Senovilla
f092da71fd
Patch to migrate lang files from setup/egw_*.lang to lang/egw_*.lang
2009-11-28 11:30:48 +00:00
Ralf Becker
697cc4f310
otherwise we get stoped by max_excutiontime
2009-11-28 11:07:31 +00:00
Stefan Becker
84e692fbb8
new prefix tags for serial letters
2009-11-27 16:37:54 +00:00
Ralf Becker
0814820652
new option &128 to NOT require an extra trigger for date popup, clicking
...
into input box is enought and removing of extra separators to be more
compact
2009-11-25 20:19:35 +00:00
Nathan Gray
8972a0ceff
Fix typo, should have a list of apps now
2009-11-24 16:31:14 +00:00
Ralf Becker
0e646e28c8
optinally return an iterator for a search
2009-11-24 10:59:19 +00:00
Ralf Becker
86e1dfa7c7
some switched off debug messages
2009-11-24 10:56:41 +00:00
Nathan Gray
b685a21fd1
eTemplate changes to support optional link sub-types
2009-11-19 20:10:46 +00:00
Ralf Becker
fe41f199bc
"use application/vnd.ms-excel for downloading excel 2003 xml format"
2009-11-14 16:08:26 +00:00
Ralf Becker
21edc1ac8a
"also disable columns for which application supplies no label (eg. no custom fields exist)"
2009-11-14 08:45:38 +00:00
Ralf Becker
b2436d312b
"fixed again which row to use, if we have to autodetect the fields:
...
we start now from the beginning searching for the first row of type array
(previously we tried the first and last row)"
2009-11-14 07:17:19 +00:00
Ralf Becker
3d5bd129ca
"using an implicit default of '.' as decimal separator, if no explicit default is set"
2009-11-13 09:49:13 +00:00
Ralf Becker
47b2216554
- new preference number_format, to specify number_format (currently only
...
used in eTemplate)
- added basic support for DateTime / egw_time to eTemplate date-widget
2009-11-12 18:36:50 +00:00
Ralf Becker
5b64b4a0e7
"fixed exception eteplate::get_array($arr,$name) $arr is no array"
2009-11-06 12:56:51 +00:00
Ralf Becker
b70d208d3f
"alternative syntax using double curly brackets, agressivly removing all xml-tags eg. Word adds within placeholders:
...
{{user/n_fn}} or {{<w:t>user</w:t>/<w:t>n_fn</w:t>}} --> $$user/n_fn$$"
2009-11-04 14:18:11 +00:00
Ralf Becker
b800493aa2
"application/xml need to be treated like xml: utf-8 encoded and encoding <>&"
2009-11-03 13:10:49 +00:00
Ralf Becker
86d9470719
"downloading word2003 mergeprint files (application/xml) as application/msword, to open it automatically in word or oowriter"
2009-11-03 11:55:12 +00:00
Ralf Becker
1052fffbba
"added application/xml as alias for text/xml"
2009-11-03 11:05:09 +00:00
Ralf Becker
90f91bc9c7
"- fixed wrong languague in notifications, because translation->userlang was changed to a static class-var
...
- fixed sometimes wrong prefs for to notified user were used (because more then one user got notified)"
2009-11-03 10:19:48 +00:00
Ralf Becker
0a4c2614a5
- moved user timezone list to egw_time
...
- added standard widget to select timezones
- modified egw_time::server2user and ::user2server to return NULL, if
time can not be parsed, not throwing an exception (as this are legacy
function meant to easy convert existing code, eg. replace strtotime())
2009-11-01 12:48:25 +00:00
Ralf Becker
d8ce440e33
fixed not encoded column-headers in csv export (were not useing the
...
export charset, as used for data)
2009-10-27 14:49:23 +00:00
Ralf Becker
a00b86c0df
"making send_notification public, as it's used by infolog"
2009-10-24 09:07:33 +00:00
Ralf Becker
b1e7fddde7
"making bo_tracking::datetime public again, as it's used outside of the class"
2009-10-23 09:47:15 +00:00
Ralf Becker
b74cf30404
"using a vbox (instead just a box) widget, to separate files in individual lines for readonly display too"
2009-10-22 14:02:19 +00:00
Ralf Becker
dbcf17972e
"make 1:N relations more tolerant for none existing rows, gave a fatal error"
2009-10-19 12:24:34 +00:00
Ralf Becker
29040ae9f8
Allow extensions to mark themself as noReadonlysALL, to not set
...
readonly, if $readonlys['__ALL__'] is set:
required for tab-widget, to be able to disable single tabs, if whole
dialog is set to readonly (view-mode)
2009-10-15 08:48:47 +00:00
Ralf Becker
ccdb259f5f
setting readonlys to array, if its not that type
2009-10-14 19:06:54 +00:00
Ralf Becker
12c7f02be3
"fixed only first row got loged, as array_diff keys the index --> renumbering with array_values"
2009-10-14 19:01:36 +00:00
Ralf Becker
11d0e8caec
"allow to specify an addtional option for each widget in a 1:N relation"
2009-10-14 19:00:16 +00:00
Ralf Becker
17bd96df7d
"ability for table plugins: they allow to repeat a table-row of an 1:N relation
...
It can eg. be used to list infologs under a sheet with contact information"
2009-10-14 08:12:11 +00:00
Ralf Becker
b97b485700
"need to also empty $name, to fully supress buttons in a box"
2009-10-13 12:09:54 +00:00
Ralf Becker
7ad5e22305
"disabling permanent logging of get_rows calls"
2009-10-12 09:08:11 +00:00
Ralf Becker
7813b84458
"reworked nextmatch widget to be able to call it's csv-export from applications (to not implement it again):
...
Example: nextmatch_widget::csv_export(array('get_rows' => 'myapp.myclass.mymethod'));"
2009-10-11 12:37:48 +00:00
Ralf Becker
4e21b766b9
- reworked old browser class to use have only static methods
...
--> recogniced it's so old and dusty, it does not make sense any more
--> moved content_header() method to html class
- fixed calls of browser->content_header to use html::content_header
instead
2009-10-11 11:37:46 +00:00
Ralf Becker
30a8168747
"only open office archives need to be repaired by \"zip -F\" (because a bug in php<5.3.1),
...
ms word files brake, when \"zip -F\" is run on them
GRRRRRRRRRRRR"
2009-10-09 14:39:55 +00:00
Ralf Becker
141519d4e6
"open office and ms office xml based formats always use utf-8 encoding (dont use export charset for them)"
2009-10-09 11:22:23 +00:00
Ralf Becker
200a6d61d5
Reworked so_sql class to:
...
- use new egw_time::server2user() and egw_time::user2server() to do
timezone conversation of registered timestamps
- added $timestamp_type parameter to constructor, to automatic convert
all timestamps on read (or search) to given type, default NULL leaves
them unchanged --> will allow in future to work completly with
egw_time objects
2009-10-08 16:18:28 +00:00
Ralf Becker
fe3ec75610
zip'ed xml document (eg. OO) --> need to encode &,<,> to not mess up xml
2009-10-07 17:46:09 +00:00
Ralf Becker
adf5ca040e
"dump4setup: searching by app.% instead of app% now"
2009-10-03 06:17:05 +00:00
Stefan Becker
e1c1f54cd6
added new tags for emty lines also for open office
2009-10-01 19:37:16 +00:00
Ralf Becker
a81fb02efe
"\"needed\" attribute got lost for \"select-account\" widget"
2009-10-01 14:08:15 +00:00
Nathan Gray
978a1d9642
Make sure if options-selectcols is set by caller, we don't clear it
2009-09-30 15:04:49 +00:00
Ralf Becker
db8599726e
"fixed partial content lost on validation errors"
2009-09-30 07:29:14 +00:00
Nathan Gray
9b29f45a0f
Remove return true; it was from the previous way I tried.
2009-09-29 14:22:10 +00:00
Ralf Becker
22083c7780
"only export highest version (we sort by version DESC!)"
2009-09-29 12:35:58 +00:00
Ralf Becker
ba213a6946
"export now correctly included multiple levels of included templates using relative names"
2009-09-29 12:19:54 +00:00
Klaus Leithoff
638ec3fcd0
return false for _post_process_cf_header as the return of always true in rows context, breaks functionality with infolog close, closeall and delete called from listview
2009-09-29 12:04:27 +00:00
Stefan Becker
0c7521cecf
added a 7th paramter to use in sitemgr modules
2009-09-28 19:14:45 +00:00
Ralf Becker
d6aaaf1f73
some widgets have label as second option (column name with _ as first),
...
not a perfect detection ...
2009-09-28 12:52:50 +00:00
Ralf Becker
90cba9cb0e
added select-bool widget with options 0 => 'no',1 => 'yes'
...
--> can be used with nextmatch custom filter to filter by a boolean
column
2009-09-28 12:51:18 +00:00
Ralf Becker
a47dab03a4
"added $extra_cols parameter of so_sql (parent class)"
2009-09-28 12:44:44 +00:00
Ralf Becker
a4d167ef8c
"fix to allow array with id's for autoinc_id"
2009-09-26 11:00:11 +00:00
Nathan Gray
c619a5d1ec
Clear filter button no longer needed, link-entry handles it
2009-09-25 14:17:41 +00:00
Ralf Becker
a11a04b78d
Enhanced nextmatch and link-widget to be able to use a link-entry
...
widget as a custom nextmatch header
Allows eg. in InfoLog to search and then filter by any linked entry of an other application:
- Infologs linked to a project or
- Infologs linked to a contact
2009-09-25 07:59:34 +00:00
Nathan Gray
780bfee1ec
Add ability for nextmatch-customfields header to filter custom fields that are links to another application
2009-09-23 15:27:33 +00:00
Stefan Becker
08d4daad55
added new Tags for merge
2009-09-23 13:00:59 +00:00
Nathan Gray
84e61f3d92
Changes from John Trudel to allow the ajax select widget to return additional information about a selected item. Additional fields are semicolon separated and added after the primary key in the ID Field
2009-09-21 18:34:14 +00:00
Ralf Becker
8db94f2471
"fix csv export to correctly export multiple categories (semicolon separated)"
2009-09-18 14:09:11 +00:00
Ralf Becker
35396fb309
"fix to simplify implementation of view dialogs:
...
$readonlys['__ALL__'] = true;
$readonlys['button[cancel]'] = false;
--> makes all widgets readonly, but the ones explicitly set to false"
2009-09-16 10:42:45 +00:00
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 \"♥\" 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