瀏覽代碼

Start : create folder in Move ViewController

Marino Faggiana 8 年之前
父節點
當前提交
e14585efbe
共有 3 個文件被更改,包括 98 次插入43 次删除
  1. 18 2
      Picker/DocumentPickerViewController.swift
  2. 66 31
      iOSClient/Move/CCMove.m
  3. 14 10
      iOSClient/Move/CCMove.storyboard

+ 18 - 2
Picker/DocumentPickerViewController.swift

@@ -5,6 +5,21 @@
 //  Created by Marino Faggiana on 27/12/16.
 //  Copyright © 2016 TWS. All rights reserved.
 //
+//  Author Marino Faggiana <m.faggiana@twsweb.it>
+//
+//  This program is free software: you can redistribute it and/or modify
+//  it under the terms of the GNU 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 General Public License for more details.
+//
+//  You should have received a copy of the GNU General Public License
+//  along with this program.  If not, see <http://www.gnu.org/licenses/>.
+//
 
 import UIKit
 
@@ -46,6 +61,7 @@ class DocumentPickerViewController: UIDocumentPickerExtensionViewController, CCN
     override func viewDidLoad() {
         
         let pathDB = dirGroup?.appendingPathComponent(appDatabase).appendingPathComponent("cryptocloud")
+        print(pathDB!)
         
         MagicalRecord.setupCoreDataStackWithAutoMigratingSqliteStore(at: pathDB!)
         MagicalRecord.setLoggingLevel(MagicalRecordLoggingLevel.off)
@@ -61,12 +77,12 @@ class DocumentPickerViewController: UIDocumentPickerExtensionViewController, CCN
             
         } else {
             
-            // Close return nil
+            // Close error no account return nil
             
             let deadlineTime = DispatchTime.now() + 0.1
             DispatchQueue.main.asyncAfter(deadline: deadlineTime) {
                 
-                let alert = UIAlertController(title: NSLocalizedString("_error_", comment: ""), message: NSLocalizedString("_message_", comment: ""), preferredStyle: .alert)
+                let alert = UIAlertController(title: NSLocalizedString("_error_", comment: ""), message: NSLocalizedString("_no_active_account_", comment: ""), preferredStyle: .alert)
                 alert.addAction(UIAlertAction(title: NSLocalizedString("_ok_", comment: ""), style: .default) { action in
                     self.dismissGrantingAccess(to: nil)
                 })

+ 66 - 31
iOSClient/Move/CCMove.m

@@ -44,9 +44,7 @@
 
 @implementation CCMove
 
-#pragma --------------------------------------------------------------------------------------------
-#pragma mark ===== View =====
-#pragma --------------------------------------------------------------------------------------------
+// MARK: - View
 
 - (void)viewDidLoad
 {
@@ -110,21 +108,10 @@
     self.navigationController.toolbar.tintColor = self.tintColor;
     
     // read folder
-    [_hud visibleIndeterminateHud];
-    
-    CCMetadataNet *metadataNet = [[CCMetadataNet alloc] initWithAccount:activeAccount];
-    
-    metadataNet.action = actionReadFolder;
-    metadataNet.serverUrl = self.localServerUrl;
-    metadataNet.selector = selectorReadFolder;
-    metadataNet.date = nil;
-    
-    [self addNetworkingQueue:metadataNet];
+    [self readFolder];
 }
 
-#pragma --------------------------------------------------------------------------------------------
-#pragma mark == alertView ==
-#pragma --------------------------------------------------------------------------------------------
+// MARK: - alertView
 
 - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
 {
@@ -136,9 +123,7 @@
     }
 }
 
-#pragma --------------------------------------------------------------------------------------------
-#pragma mark == IBAction ==
-#pragma --------------------------------------------------------------------------------------------
+// MARK: - IBAction
 
 - (IBAction)cancel:(UIBarButtonItem *)sender
 {
@@ -154,9 +139,8 @@
     [self dismissViewControllerAnimated:YES completion:nil];
 }
 
-#pragma --------------------------------------------------------------------------------------------
-#pragma mark == BKPasscodeViewController ==
-#pragma --------------------------------------------------------------------------------------------
+
+// MARK: - BKPasscodeViewController
 
 - (void)passcodeViewController:(CCBKPasscode *)aViewController didFinishWithPasscode:(NSString *)aPasscode
 {
@@ -217,9 +201,7 @@
     [self dismissViewControllerAnimated:YES completion:nil];
 }
 
-#pragma --------------------------------------------------------------------------------------------
-#pragma mark ======================= NetWorking ==================================
-#pragma --------------------------------------------------------------------------------------------
+// MARK: - NetWorking
 
 - (void)dropboxFailure
 {
@@ -261,6 +243,8 @@
     
 }
 
+// MARK: - Download File
+
 - (void)downloadFileSuccess:(NSString *)fileID serverUrl:(NSString *)serverUrl selector:(NSString *)selector selectorPost:(NSString *)selectorPost
 {
     if ([selector isEqualToString:selectorLoadPlist]) {
@@ -278,6 +262,8 @@
     self.move.enabled = NO;
 }
 
+// MARK: - Read Folder
+
 - (void)readFolderFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode
 {
     [_hud hideHud];
@@ -338,9 +324,60 @@
     [_hud hideHud];
 }
 
-#pragma --------------------------------------------------------------------------------------------
-#pragma mark == Table ==
-#pragma --------------------------------------------------------------------------------------------
+- (void)readFolder
+{
+    // read folder
+    [_hud visibleIndeterminateHud];
+    
+    CCMetadataNet *metadataNet = [[CCMetadataNet alloc] initWithAccount:activeAccount];
+    
+    metadataNet.action = actionReadFolder;
+    metadataNet.serverUrl = self.localServerUrl;
+    metadataNet.selector = selectorReadFolder;
+    metadataNet.date = nil;
+    
+    [self addNetworkingQueue:metadataNet];
+}
+
+// MARK: - Create Folder
+
+- (void)createFolderFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode
+{
+    [_hud hideHud];
+    
+    //if (message)
+    //    [app messageNotification:@"_create_folder_" description:message visible:YES delay:dismissAfterSecond type:TWMessageBarMessageTypeError];
+}
+
+- (void)createFolderSuccess:(CCMetadataNet *)metadataNet
+{
+    [_hud hideHud];
+    
+    [CCCoreData addDirectory:[NSString stringWithFormat:@"%@/%@", metadataNet.serverUrl, metadataNet.fileName] date:[NSDate date] permissions:nil activeAccount:activeAccount];
+    
+    // Load Folder or the Datasource
+    [self readFolder];
+}
+
+- (void)createFolder:(NSString *)fileNameFolder
+{
+    CCMetadataNet *metadataNet = [[CCMetadataNet alloc] initWithAccount:activeAccount];
+    
+    fileNameFolder = [CCUtility clearFile:fileNameFolder];
+    if (![fileNameFolder length]) return;
+    
+    metadataNet.action = actionCreateFolder;
+    metadataNet.fileName = fileNameFolder;
+    metadataNet.selector = selectorCreateFolder;
+    metadataNet.selectorPost = selectorReadFolderForced;
+    metadataNet.serverUrl = _localServerUrl;
+    
+    [self addNetworkingQueue:metadataNet];
+    
+    [_hud visibleIndeterminateHud];
+}
+
+// MARK: - Table
 
 - (void)reloadTable
 {
@@ -400,9 +437,7 @@
     [self performSegueDirectoryWithControlPasscode:YES];
 }
 
-#pragma --------------------------------------------------------------------------------------------
-#pragma mark == Navigation ==
-#pragma --------------------------------------------------------------------------------------------
+// MARK: - Navigation
 
 - (void)performSegueDirectoryWithControlPasscode:(BOOL)controlPasscode
 {

+ 14 - 10
iOSClient/Move/CCMove.storyboard

@@ -1,8 +1,12 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="10117" systemVersion="15F34" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11762" systemVersion="16C67" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
+    <device id="retina4_7" orientation="portrait">
+        <adaptation id="fullscreen"/>
+    </device>
     <dependencies>
         <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="11757"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <scenes>
         <!--Move-->
@@ -10,22 +14,22 @@
             <objects>
                 <tableViewController storyboardIdentifier="CCMoveVC" id="r57-Y0-NGA" customClass="CCMove" sceneMemberID="viewController">
                     <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="50" sectionHeaderHeight="22" sectionFooterHeight="22" id="McT-Wl-5yC">
-                        <rect key="frame" x="0.0" y="64" width="600" height="492"/>
+                        <rect key="frame" x="0.0" y="64" width="375" height="559"/>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
-                        <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                         <prototypes>
                             <tableViewCell contentMode="scaleToFill" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" reuseIdentifier="MyCustomCell" textLabel="Z3y-WW-606" rowHeight="60" style="IBUITableViewCellStyleDefault" id="w3K-MH-HTI">
-                                <rect key="frame" x="0.0" y="22" width="600" height="60"/>
+                                <rect key="frame" x="0.0" y="22" width="375" height="60"/>
                                 <autoresizingMask key="autoresizingMask"/>
                                 <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="w3K-MH-HTI" id="o7i-Tv-3Dy">
-                                    <rect key="frame" x="0.0" y="0.0" width="567" height="59.5"/>
+                                    <rect key="frame" x="0.0" y="0.0" width="342" height="59.5"/>
                                     <autoresizingMask key="autoresizingMask"/>
                                     <subviews>
                                         <label opaque="NO" multipleTouchEnabled="YES" contentMode="left" text="Title" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Z3y-WW-606">
-                                            <rect key="frame" x="15" y="0.0" width="550" height="59.5"/>
+                                            <rect key="frame" x="15" y="0.0" width="325" height="59.5"/>
                                             <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                                             <fontDescription key="fontDescription" type="system" pointSize="13"/>
-                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
+                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                             <nil key="highlightedColor"/>
                                         </label>
                                     </subviews>
@@ -73,7 +77,7 @@
                     </navigationBar>
                     <nil name="viewControllers"/>
                     <toolbar key="toolbar" opaque="NO" clearsContextBeforeDrawing="NO" alpha="0.89999997615814209" contentMode="scaleToFill" translucent="NO" id="rcA-x8-dow">
-                        <rect key="frame" x="0.0" y="556" width="600" height="44"/>
+                        <rect key="frame" x="0.0" y="623" width="375" height="44"/>
                         <autoresizingMask key="autoresizingMask"/>
                     </toolbar>
                     <connections>