pydio / pydio-core Goto Github PK
View Code? Open in Web Editor NEWPydio 8 official repository
Home Page: https://pydio.com
License: GNU Affero General Public License v3.0
Pydio 8 official repository
Home Page: https://pydio.com
License: GNU Affero General Public License v3.0
I would like to use Ajaxplorer with my S3 bucket in the ap-southeast-2 region, Sydney, but it is not available in the dropdown menu. I thought I might be able to add it to manifest.xml, but was not successful.
Perhaps you can help out with this, by adding the region to the plugin?
(4.3.2)
1.After the upgrade, users logging in for the first time get a random selection of their previous shares.
I was able to stop problem 2. by disallowing section ::
if($this->options["UPGRADE_FROM_METASERIAL"] == true && count(self::$fullMetaCache[$metaFile]) && !isSet(self::$fullMetaCache[$metaFile]["AJXP_METASTORE_UPGRADED"])){
in plugins/metastore.serial/class.SerialMetaStore.php.
For problem 1. I had to create a homemade script to migrate users.
On ajaxplorer 4.3.2
"Add workspaces ..." button in "My Workspaces" will not show just after logon, even I enabled user to add workspaces.
It will show after switch to another workspace.
Thanks!
The Share action should be accessible in the right-click menu
I tried to set up a simple SQLite database, to test the new functionalities (v4.3.2).
First thing, in the config it needs a user and password, which is irrelevant. Well not that important but still it's a bit confusing.
But worst is that all the "setup database" scripts I tried failed, with just an error notice.
Then I tried to run the ./plugins/feed.sql/create.sql
through sqlite3 command-line and I got more meaningful errors. First was about a missing trailing ";", then mostly about AUTO_INCREMENT and PRIMARY KEY.
I'd say you should review the scripts for at least the adapters you propose in the GUI !
Good luck for v5, I'll try to let you know about the bugs I find.
Regards
I followed the instructions when upgrading to 4.3.2, and when I finished, I wanted to test the new sharing minisite. It wasn't working, so I checked out the installation instructions, and deleted the .htaccess file in data/public. I expected, as informed by the release notes that this file would be rebuilt when I tried to share a folder again, but a new .htaccess wasn't created. I can see the hashed .php files that correspond to each public share, but the rewrite rules are obviously not working.
Was it meant to create a new .htaccess as mentioned in the 4.3.2 release notes, and why wouldn't it be able to? the whole tree is owned by apache and the data/public directories can be written by anyone.
thanks
ben
For performance and security, remove the <serverCallback> nodes from registry when sending to clien.
Since last version, when the need to retype password in order to enable WebDAV was removed, I'm not able to login to WebDAV service.
I think that the problem may be in AJXP_Sabre_AuthBackend::getDigestHash():
if(empty($webdavData) || !isset($webdavData["ACTIVE"]) || $webdavData["ACTIVE"] !== true || !isSet($webdavData["PASS"])){
return false;
It will return false if AJXP_WEBDAV_DATA["PASS"] is not set, but my AJXP_WEBDAV_DATA array only contains HA1 and ACTIVE keys.
On line 82 "checkPassord" is used instead of "checkPassword".
if(isSet($AJXP_GLUE_GLOBALS["checkPassord"]) && $AJXP_GLUE_GLOBALS["checkPassord"] === TRUE){
should be:
if(isSet($AJXP_GLUE_GLOBALS["checkPassword"]) && $AJXP_GLUE_GLOBALS["checkPassword"] === TRUE){
Hash signs in file names are apparently allowed on POSIX/Linux and through sftp, but AjaXplorer chokes on these files through sftp. Such files will appear as folders in the web interface, and the call to dir_opendir will fail. Apparently, this is caused by the use of the function parse_url on the path in class.sftpAccessWrapper.php, which treats the hash sign as a separator between "path" and "fragment".
Perhaps, the "fragment" could be reappended as an easy fix in order to not sacrifice the use of parse_url? I don't really know my way arround the source code for this project, so I don't know if this would break other things.
Original link: http://ajaxplorer.info/community/forum/?vanilla_redir=discussion%2F5136%2Fadmin-users-see-shares-by-another-users
I'm my instance of ajaxplorer I founded a bug for this.
Look this, the option "Public links" in "Logs & Other data" search the public flies and listen in gui, but if you insert another php file in public folder the action to list crashes.
In my case I changed public folder to public_html in my host and I add a one blank index.php to deny a listing and this causes a problem when i try to list.
Parsing error :
XML Parsing Error: no element found
Location: http://mydomain.com.br/painel/index.php?secure_token=mytoken&get_action=ls&options=al&dir=%2Fadmin%2Ffiles
Line Number 9, Column 2029:
If i rename index.php to index.html the "Public links" in "Logs & Other data" lists a public links normally.
I hope to have helped
Thanks again.
Originally thought it was just file-type that was confusing the MAC, but just downloading some files it appears they are not the right size. This is using MAC's Finder.
On the MAC, using CyberDuck application, all works properly.
Hello,
I was pretty surprised to get an update to a beta version in the repo.
Namely the debian repository, with deb http://dl.ajaxplorer.info/repos/apt squeeze main
I went through a few bugs related to this update, luckily I was on a testing server.
I had to wipe all the old install, I became too messy.
Last bug left (as far as I know) :
No .htaccess (nor down.jpg as pointed in http://ajaxplorer.info/ajaxplorer-4.3.2/) in data/public.
So the rewriting doesn't work.
Any ideas ?
Anyway, congrats for the good work !
Regards
Testing v4.3.1.
New issues found when I upload file with drag and drop method (tested w/ FF, Chrome browser).
Sometimes I drag and drop upload a single file, there will be a few copied uploaded finally.
Naming like this: abc.doc, abc-1.doc, abc-2.doc, abc-3.doc......
It doesn't happen if I upload by clicking "Send" button and browse...
like the GUI plugin...
It a mail is sent without a sender adresse (either current user or administrator), there is an "invalid adress" error that is not self-explanatory.
The keepalive "ping" sent by Ajaxplorer causes quite a rise in load on not-so-decent servers, sometimes up to the point where the ping URL doesn't even load anymore, resulting in a queue that's making things even worse.
Maybe the interval could be raised to something like 10s, insteadof the couple of hundred ms it seems to be right now?
Using 4.2.3, btw.
Thanks!
When in a text field, using an arrow key is triggering the form "modified" state, should be ignored
Any value is allowed as input for "expire after" when generating a share link, including letters and negative values.
If entered value is not a valid number, the link will be generated anyway but it will always appear as expired.
Proposed patch:
diff --git a/plugins/action.share/class.ShareCenter.js b/plugins/action.share/class.ShareCenter.js
index bab0832..d47be82 100644
--- a/plugins/action.share/class.ShareCenter.js
+++ b/plugins/action.share/class.ShareCenter.js
@@ -225,6 +225,13 @@ Class.create("ShareCenter", {
conn.setParameters(oForm.serialize(true));
conn.addParameter('get_action','share');
conn.onComplete = function(transport){
+ if (transport.status != 200) // If it failed
+ {
+ // Restore button image
+ oForm.down('img#generate_image').src = window.ajxpResourcesFolder+"/images/actions/16/share.png";
+ // And exit
+ return;
+ }
var cont = oForm.down('input[id="share_container"]');
if(cont){
cont.value = transport.responseText;
diff --git a/plugins/action.share/class.ShareCenter.php b/plugins/action.share/class.ShareCenter.php
index 87d6cc2..12ecb0c 100644
--- a/plugins/action.share/class.ShareCenter.php
+++ b/plugins/action.share/class.ShareCenter.php
@@ -149,6 +149,15 @@ class ShareCenter extends AJXP_Plugin{
}
}else{
$file = AJXP_Utils::decodeSecureMagic($httpVars["file"]);
+
+ // Check if expiration value is a natural number
+ if (!preg_match("/^[0-9]+$/", $httpVars["expiration"]))
+ {
+ header("HTTP/1.1 400 Bad Request");
+ header("Status: 400 Bad Request");
+ throw new Exception("Invalid expiration value");
+ }
+
if(!isSet($httpVars["downloadlimit"])){
$httpVars["downloadlimit"] = 0;
}
The editor.soundmanager does not seem to be correctly initialized on Safari
We should set up a way to at least grep all the declared hooks, and then comment them with correct arguments
When I get a WebDAV file using a MAC it complains about being corrupt. Size and structure looks correct. Tried the same file with Apache WebDAV and received it ok. Tried same file with OwnCloud and it also received it ok.
Looks like getContentType in core/classes/sabredav/ajaxplorer/class.AJXP_Sabre_NodeLeaf.php has not been brought up to SabreDAV.
Currently, a storage quota (limit) can be set for a given user AND a given repository, it could be useful to have this set for a repository, all users cumulated.
This is not exactly a bug in AjaXplorer but in PHP, which seems to have a problem handling multiline FTP responses.
Steps to reproduce:
Set up a ProFTPD server with hard quotas enabled.
Upload a file larger than the available space in FTP account.
AjaXplorer will say that the file upload has failed with reason "Opening BINARY mode data connection" which is the reason PHP gave.
As I said, the problem is in PHP, not in AjaXplorer. I already opened PHP bug #62035: https://bugs.php.net/bug.php?id=62035
But this is causing wrong responses in AjaXplorer. I workarounded it with this dirty patch:
diff --git a/plugins/access.ftp/class.ftpAccessWrapper.php b/plugins/access.ftp/class.ftpAccessWrapper.php
index 22be268..56adce2 100644
--- a/plugins/access.ftp/class.ftpAccessWrapper.php
+++ b/plugins/access.ftp/class.ftpAccessWrapper.php
@@ -136,13 +136,23 @@ class ftpAccessWrapper {
fclose($this->fp);
}
}
+
+ // PHP bug #62035
+ public static function fput_quota_hack($errno, $errstr, $errfile, $errline, $errcontext)
+ {
+ if (strpos($errstr, "Opening BINARY mode data connection") !== false)
+ $errstr = "Transfer failed. Please check available disk space (quota)";
+ AJXP_XMLWriter::catchError($errno, $errstr, $errfile, $errline, $errcontext);
+ }
public function stream_flush(){
if(isSet($this->fp) && $this->fp!=-1 && $this->fp!==false){
if($this->crtMode == 'write'){
rewind($this->fp);
AJXP_Logger::debug("Ftp_fput", array("target"=>$this->crtTarget));
+ set_error_handler(array("ftpAccessWrapper", "fput_quota_hack"), E_ALL & ~E_NOTICE );
ftp_fput($this->crtLink, $this->crtTarget, $this->fp, FTP_BINARY);
+ restore_error_handler();
AJXP_Logger::debug("Ftp_fput end", array("target"=>$this->crtTarget));
}else{
fflush($this->fp);
Gather the developer docs in the Git repository to ease forks and contribs.
An expected feature request: open files inside tabs.
To be discussed : where do the tabs go in the new interface?
Not really disappeared of course, but the wrong message is sent to the interface.
Many issues are reported when handling special characters inside a zip, between serverside and Windows. Either ways.
http://forum.ajaxplorer.info/discussion/5045/unicode-filenames-get-massed-in-compress-zip-file/p1
WS Socket is nice to avoid polling. The WS-Server implementation seems to work, but still complicated to configure, start, and check it's correctly working.
PHP Fatal error: Call to a member function initMeta() on a non-object in xxx/plugins/meta.filehasher/class.FileHasher.php on line 57
Problem was probably caused by a corrupt repo, found that filehasher plugin was active but no metastore available. Big concern is the repo contained some files which were lost. Problem is linked with one repo, and affects all the users that open session on that repo.
The problem was removed thru these steps:
It's enough to remove the filehasher plugin to make it work again. I still do not have a .axjp_meta file in my repo but everything seems to work fine.
[always remember to leave one account only for admin purposes, saved me this time :) ]
The user is kept in database/serial and not visible in the interface
Both SQL/SERIAL
tables/serials involved : ajxp_users, ajxp_users_rights, ajxp_roles
Strangely not the table ajxp_user_prefs (to check)
Some one asked the same question for searching multiple DN for LDAP login.
http://ajaxplorer.info/community/forum/?vanilla_redir=discussion%2F5233
Use sth like that in config file to search multiple DN:
"LDAP_DN" => array('OU=Sales_Users,DC=COMPANY,DC=corp', 'OU=IT_Users,DC=COMPANY,DC=corp'),
However, in 4.3.2, I don't use config file any more, we set LDAP config in the GUI, how can I make it search users in more than one OU?
Thanks!!
I let user to add samba workspace on 4.3.1.
After adding, user have to logout & login to make the new workspace show up in the My Workspaces menu. Refresh can't help.
When the new workspace show up in the menu, the delete button don't show up.
Scroll bar appeared on the new item, it happen on Chrome & Safari.
Attached the screen capture for your reference.
Thanks!
Background opacity does not goes back to transparent after login.
Find a way to make changes without necessarily touching the bootstrap_plugins.php file.
Not sure if the web-based configuration tool is working yet, so forgive me if I'm jumping the gun.
I just installed the latest stable and then upgraded to the latest development release. I then opened Core Configs > Configurations Management. I changed SQL Connexion to MySQL, input valid MySQL data, and saved the window.
Upon refresh, the SQL Connexion pull-down was back to default, and my MySQL data was not present.
Fix radio inputs layout, the yes / no label is misplaced.
When using a master/slave (ldap/serial) setup ajaxplorer allows users to login even after they have been deleted from LDAP.
The users gets a local (= serial) account when he logs in once.
checkPassword() in plugins/auth.multi/class.multiAuthDriver.php checks both drivers so when logging in though the master authentication fails he still can use the slave (= serial) authentication.
My suggestions would be to limit slave authentication in a master/slave setup to special accounts like the default "admin" user and users with the profile "shared" and "guest".
I have a patch for this if you think this is a sane solution.
I am using ajaxplorer 4.3.1.
User should be able to choose the emails received.
The check should not be inside createUser() as if password is passed already hashed it makes no sense! Should be deported client-side only probably
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.