Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F2528606
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
7 KB
Referenced Files
None
Subscribers
None
View Options
diff --git a/config/config.inc.php.dist b/config/config.inc.php.dist
index 65489ed..14e9bf3 100644
--- a/config/config.inc.php.dist
+++ b/config/config.inc.php.dist
@@ -1,95 +1,111 @@
<?php
// This file contains Chwala configuration options.
// Real config file must contain or include Roundcube Framework config.
// ------------------------------------------------
// Global settings
// ------------------------------------------------
// Main files source, backend driver which handles
// authentication and configuration of Chwala
// Note: Currently only 'kolab' is supported
$config['fileapi_backend'] = 'kolab';
// Enabled external storage drivers
// Note: Currenty only 'seafile' and webdav is available
$config['fileapi_drivers'] = array('seafile', 'webdav');
// Pre-defined list of external storage sources.
// Here admins can define sources which will be "mounted" into users folder tree
/*
$config['fileapi_sources'] = array(
'Seafile' => array(
'driver' => 'seafile',
'host' => 'seacloud.cc',
// when username is set to '%u' current user name and password
// will be used to authenticate to this storage source
'username' => '%u',
),
'Public-Files' => array(
'driver' => 'webdav',
'baseuri' => 'https://some.host.tld/Files',
'username' => 'admin',
'password' => 'pass',
),
);
*/
+// Default values for sources configuration dialog.
+// Note: use driver names as the array keys.
+// Note: %u variable will be resolved to the current username.
+/*
+$config['fileapi_presets'] = array(
+ 'seafile' => array(
+ 'host' => 'seacloud.cc',
+ 'username' => '%u',
+ ),
+ 'webdav' => array(
+ 'baseuri' => 'https://some.host.tld/Files',
+ 'username' => '%u',
+ ),
+);
+*/
+
// Manticore service URL. Enables use of WebODF collaborative editor.
// Note: this URL should be accessible from Chwala host and Roundcube host as well.
$config['fileapi_manticore'] = null;
// WOPI/Office service URL. Enables use of collaborative editor supporting WOPI.
// Note: this URL should be accessible from Chwala host and Roundcube host as well.
$config['fileapi_wopi_office'] = null;
// Kolab WOPI service URL. Enables use of collaborative editor supporting WOPI.
// Note: this URL should be accessible from Chwala host and Office host as well.
$config['fileapi_wopi_service'] = null;
// Name of the user interface skin.
$config['file_api_skin'] = 'default';
// Chwala UI communicates with Chwala API via HTTP protocol
// The URL here is a location of Chwala API service. By default
// the UI location is used with addition of /api/ suffix.
$config['file_api_url'] = '';
// Type of Chwala cache. Supported values: 'db', 'apc' and 'memcache'.
// Note: This is only for some additional data like WOPI capabilities.
$config['fileapi_cache'] = 'db';
// lifetime of Chwala cache
// possible units: s, m, h, d, w
$config['fileapi_cache_ttl'] = '1d';
// ------------------------------------------------
// SeaFile driver settings
// ------------------------------------------------
// Enables SeaFile Web API conversation log
$config['fileapi_seafile_debug'] = true;
// Enables caching of some SeaFile information e.g. folders list
// Note: 'db', 'apc' and 'memcache' are supported
$config['fileapi_seafile_cache'] = 'db';
// Expiration time of SeaFile cache entries
$config['fileapi_seafile_cache_ttl'] = '7d';
// Default SeaFile Web API host
// Note: http:// and https:// (default) prefixes can be used here
$config['fileapi_seafile_host'] = 'localhost';
// Enables SSL certificates validation when connecting
// with any SeaFile server
$config['fileapi_seafile_ssl_verify_host'] = false;
$config['fileapi_seafile_ssl_verify_peer'] = false;
// ------------------------------------------------
// WebDAV driver settings
// ------------------------------------------------
// Default URI location for WebDAV storage
$config['fileapi_webdav_baseuri'] = 'https://localhost/iRony';
diff --git a/lib/api/folder_types.php b/lib/api/folder_types.php
index c57a0ac..58c996e 100644
--- a/lib/api/folder_types.php
+++ b/lib/api/folder_types.php
@@ -1,58 +1,61 @@
<?php
/*
+--------------------------------------------------------------------------+
| This file is part of the Kolab File API |
| |
| Copyright (C) 2012-2014, Kolab Systems AG |
| |
| This program is free software: you can redistribute it and/or modify |
| it under the terms of the GNU Affero General Public License as published |
| by the Free Software Foundation, either version 3 of the License, or |
| (at your option) any later version. |
| |
| This program is distributed in the hope that it will be useful, |
| but WITHOUT ANY WARRANTY; without even the implied warranty of |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| GNU Affero General Public License for more details. |
| |
| You should have received a copy of the GNU Affero General Public License |
| along with this program. If not, see <http://www.gnu.org/licenses/> |
+--------------------------------------------------------------------------+
| Author: Aleksander Machniak <machniak@kolabsys.com> |
+--------------------------------------------------------------------------+
*/
class file_api_folder_types extends file_api_common
{
/**
* Request handler
*/
public function handle()
{
parent::handle();
$drivers = $this->rc->config->get('fileapi_drivers');
+ $presets = (array) $this->rc->config->get('fileapi_presets');
$result = array();
if (!empty($drivers)) {
foreach ((array) $drivers as $driver_name) {
if ($driver_name != 'kolab' && !isset($result[$driver_name])) {
$driver = $this->api->load_driver_object($driver_name);
$meta = $driver->driver_metadata();
+ $meta = $this->parse_metadata($meta);
- $result[$driver_name] = $this->parse_metadata($meta);
+ if (!empty($presets[$driver_name]) && empty($meta['form_values'])) {
+ $meta['form_values'] = (array) $presets[$driver_name];
+ $user = $this->rc->get_user_name();
+
+ foreach ($meta['form_values'] as $key => $val) {
+ $meta['form_values'][$key] = str_replace('%u', $user, $val);
+ }
+ }
+
+ $result[$driver_name] = $meta;
}
}
}
-/*
- // add local storage to the list
- if (!empty($result)) {
- $backend = $this->api->get_backend();
- $meta = $backend->driver_metadata();
- $result = array_merge(array('default' => $this->parse_metadata($meta, true)), $result);
- }
-*/
return $result;
}
}
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Sun, Feb 1, 3:39 PM (1 d, 20 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
426709
Default Alt Text
(7 KB)
Attached To
Mode
R26 chwala
Attached
Detach File
Event Timeline
Log In to Comment