Пример #1
0
        public void Register(string email)
        {
            Contract.Requires<ArgumentNullException>(!string.IsNullOrEmpty(email),
                "Invalid email address, cannot be null or empty.");
            
            var client = new RestClient(Host.Url);

            try
            {
                client.AddParameter("user[email]", email);
                client.AddParameter("module[InstallType]", EnabledFeatures.InstallType());
                client.AddParameter("module[ProfCompareModule]", EnabledFeatures.CompareEnabled.ToString());
                client.AddParameter("module[ProfReviewModule]", EnabledFeatures.ReviewEnabled.ToString());
                client.AddParameter("module[ProfProtectModule]", EnabledFeatures.SecurityEnabled.ToString());
                client.AddParameter("module[ProfSecureFileTransferModule]",
                    EnabledFeatures.SecureFileTransferEnabled.ToString());
                client.AddParameter("module[ProfHummingbirdModule]", EnabledFeatures.HummingbirdEnabled.ToString());
                client.AddParameter("module[ProfInterwovenModule]", EnabledFeatures.InterwovenEnabled.ToString());
                client.AddParameter("module[ProfSharePointModule]", EnabledFeatures.SharePointEnabled.ToString());
                client.AddParameter("module[ProfNetDocumentsModule]", EnabledFeatures.NetDocumentsEnabled.ToString());

                client.Post("/api/v1.3/sign_ups/create_by_email.json");
            }
            catch (Exception)
            {
                if (client.Json != null)
                {
                    if (client.Json.Contains("resource_validation_error"))
                        throw new SecurityException("Password is too short (must be at least 4 characters)");
                }
                throw;
            }

        }
Пример #2
0
 public IPlatformGroup Create(string name)
 {
     var client = new RestClient(Host.Url, Session.Cookies);
     client.EncodeParametersAsJson = true;
     client.AddParameter("name", name);
     client.AddParameter("audience", "PRIVATE");
     client.Post("/groups-api/api/v1.0/groups.json");
     return Get().Find(x => x.Name == name);
 }
Пример #3
0
 public string Invite(string fileToken, string groupUuid)
 {
     var client = new RestClient(Host.Url, Session.Cookies);
     client.EncodeParametersAsJson = true;
     client.AddParameter("fileToken", fileToken);
     client.AddParameter("groupUuid", groupUuid);
     var response = client.Post("/groups-api/api/v1.0/invite.json");
     return response.Headers.Location.ToString();
 }
Пример #4
0
        public IPlatformFolder Create(string name, string parentId, IPlatformPermissions attributes)
        {
            var client = new RestClient(Host.Url, Session.Cookies);
            client.AddParameter("folder[name]", name);
            client.AddParameter("folder[description]", "");
            client.AddParameter("folder[notify_owner]", attributes.NotifyOwner.ToString());
            client.AddParameter("folder[parent_id]", parentId);
            client.AddParameter("rewrite_folder_ids", "false");

            if (attributes.ExpiryDate.HasValue && attributes.ExpiryDate.Value.Year < 9999 &&
                attributes.ExpiryDate.Value.Year > 1)
            {
                client.AddParameter("folder[expires_at]", attributes.ExpiryDate.Value.ToString("yyyy-MM-dd HH:mm:ss UTC"));
            }

            client.Post("/api/v1.2/folders.json");

            return new PlatformFolder(Session, User, null, client.Content);
        }
Пример #5
0
        public void Register(string email, string password)
        {
            var client = new RestClient(Host.Url);
            client.AddParameter("start_trial", "false");
            client.AddParameter("user[email]", email);
            client.AddParameter("user[password]", password);
            client.AddParameter("user[password_confirmation]", password);
            client.AddParameter("user[first_name]", email);
            client.AddParameter("user[last_name]", string.Empty);
            client.AddParameter("module[InstallType]", EnabledFeatures.InstallType());
            client.AddParameter("module[ProfCompareModule]", EnabledFeatures.CompareEnabled.ToString());
            client.AddParameter("module[ProfReviewModule]", EnabledFeatures.ReviewEnabled.ToString());
            client.AddParameter("module[ProfProtectModule]", EnabledFeatures.SecurityEnabled.ToString());
            client.AddParameter("module[ProfSecureFileTransferModule]",
                EnabledFeatures.SecureFileTransferEnabled.ToString());
            client.AddParameter("module[ProfHummingbirdModule]", EnabledFeatures.HummingbirdEnabled.ToString());
            client.AddParameter("module[ProfInterwovenModule]", EnabledFeatures.InterwovenEnabled.ToString());
            client.AddParameter("module[ProfSharePointModule]", EnabledFeatures.SharePointEnabled.ToString());
            client.AddParameter("module[ProfNetDocumentsModule]", EnabledFeatures.NetDocumentsEnabled.ToString());

            client.Post("/api/v1.3/sign_ups.json");
        }
Пример #6
0
 public void VisitFile(int fileId)
 {
     var client = new RestClient(Host.Url, Session.Cookies);
     client.AddParameter("visit[file_id]",fileId);
     client.Post(string.Format("/api/v1.2/visits.json"));
 }
Пример #7
0
 private IPlatformComment Add(string body, int fileId, int fileVersion, long replyToId)
 {
     var client = new RestClient(Host.Url, Session.Cookies);
     client.AddParameter("comment[body]", body);
     client.AddParameter("comment[file_id]", fileId);
     client.AddParameter("comment[file_version]", fileVersion);
     client.AddParameter("comment[slide_number]", 1);
     if (replyToId > 0) client.AddParameter("comment[reply_to_id]", replyToId);
     client.Post("/api/v1.2/comments.json");
     return new PlatformComment(Session, User, client.Content);
 }
Пример #8
0
 public void AddMember(string email)
 {
     var client = new RestClient(Host.Url, Session.Cookies);
     client.AddParameter("member[user_email]", email);
     client.Post(string.Format("/api/v1.2/folders/{0}/members.json", Id));
 }
Пример #9
0
        public void SendValidationEmail(string email)
        {
            var client = new RestClient(Host.Url);
            client.AddParameter("user[email]", email);
            client.Post("/api/v1.3/validations.json");
            //var client = new RestClient(Host.Url);
            //var request = new RestRequest("/api/v1.3/validations.xml", Method.POST);
            //request.AddParameter("user[email]", email);

            //var response = client.Execute(request);
            //ResponsePolicy.Validate(response);
            //return response.StatusCode == HttpStatusCode.Created;
        }