diff --git a/filecloudapi/fcserver.py b/filecloudapi/fcserver.py index 4141454..f591151 100644 --- a/filecloudapi/fcserver.py +++ b/filecloudapi/fcserver.py @@ -902,6 +902,34 @@ def share(self, path: str, adminproxyuserid: str = "") -> FCShare: str_to_bool(resp.findtext("./share/allowpublicuploadonly", "")), ) + def quickshare(self, sharelocation: str, adminproxyuserid: str = "") -> FCShare: + """ + Quick Share 'sharelocation' + """ + resp = self._api_call( + "/core/quickshare", + {"sharelocation": sharelocation, "adminproxyuserid": adminproxyuserid}, + ) + + shareid = resp.findtext("./share/shareid", "") + + if not shareid: + msg = resp.findtext("./meta/message", "") + if msg: + raise ServerError("", msg) + else: + raise ServerError("", "No shareid in response") + + return FCShare( + shareid, + resp.findtext("./share/sharename", ""), + resp.findtext("./share/sharelocation", ""), + str_to_bool(resp.findtext("./share/allowpublicaccess", "")), + str_to_bool(resp.findtext("./share/allowpublicupload", "")), + str_to_bool(resp.findtext("./share/allowpublicviewonly", "")), + str_to_bool(resp.findtext("./share/allowpublicuploadonly", "")), + ) + def getshareforpath(self, path: str, adminproxyuserid: str = "") -> FCShare: """ Share 'path' diff --git a/pyproject.toml b/pyproject.toml index dda49a4..a4e729f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [tool.poetry] name = "filecloudapi-python" -version = "0.2" +version = "0.2.1" description = "A Python library to connect to a Filecloud server" packages = [{ include = "filecloudapi" }]