Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/ios.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormarinofaggiana <marino@marinofaggiana.com>2020-08-17 16:32:52 +0300
committermarinofaggiana <marino@marinofaggiana.com>2020-08-17 16:32:52 +0300
commit4811dfa905ca4aae2337844c188b9d5473f7423e (patch)
tree4654b81fec810771b297aab8b154355d96245d1f /iOSClient/Diagnostics
parent76101878f3ee40a5ff1e8a0faf9b4795f5bea955 (diff)
coding
Diffstat (limited to 'iOSClient/Diagnostics')
-rw-r--r--iOSClient/Diagnostics/NCDiagnosticViewController.storyboard614
-rw-r--r--iOSClient/Diagnostics/NCDiagnosticViewController.swift308
2 files changed, 922 insertions, 0 deletions
diff --git a/iOSClient/Diagnostics/NCDiagnosticViewController.storyboard b/iOSClient/Diagnostics/NCDiagnosticViewController.storyboard
new file mode 100644
index 000000000..ff7c8b8a5
--- /dev/null
+++ b/iOSClient/Diagnostics/NCDiagnosticViewController.storyboard
@@ -0,0 +1,614 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="16097.2" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="vTK-Er-kbZ">
+ <device id="retina6_1" orientation="portrait" appearance="light"/>
+ <dependencies>
+ <deployment identifier="iOS"/>
+ <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="16087"/>
+ <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+ <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+ </dependencies>
+ <scenes>
+ <!--Diagnostic View Controller-->
+ <scene sceneID="UF0-FW-gHK">
+ <objects>
+ <viewController id="7oH-vf-YqN" customClass="NCDiagnosticViewController" customModule="Nextcloud" customModuleProvider="target" sceneMemberID="viewController">
+ <view key="view" contentMode="scaleToFill" id="Aja-Mn-6Wc">
+ <rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
+ <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+ <subviews>
+ <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="hTE-ys-qsF">
+ <rect key="frame" x="0.0" y="88" width="414" height="774"/>
+ <subviews>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Sms-Ez-fLO" userLabel="View Capabilities">
+ <rect key="frame" x="5" y="5" width="404" height="500"/>
+ <subviews>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="jdW-oZ-cH8" userLabel="FileSharing">
+ <rect key="frame" x="0.0" y="0.0" width="404" height="50"/>
+ <subviews>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="share" translatesAutoresizingMaskIntoConstraints="NO" id="G9c-Nd-Ikl">
+ <rect key="frame" x="0.0" y="10" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="width" constant="30" id="2jt-3Q-W9U"/>
+ <constraint firstAttribute="height" constant="30" id="qw0-LB-a0S"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="File sharing" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Olg-V3-URE">
+ <rect key="frame" x="40" y="16" width="234" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="SbT-rU-lJ8">
+ <rect key="frame" x="279" y="12.5" width="120" height="25"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="25" id="Yf6-Er-ibu"/>
+ <constraint firstAttribute="width" constant="120" id="bqY-hB-VuU"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="50" id="486-j7-SKp"/>
+ <constraint firstItem="SbT-rU-lJ8" firstAttribute="centerY" secondItem="jdW-oZ-cH8" secondAttribute="centerY" id="4Ao-MF-e1N"/>
+ <constraint firstItem="G9c-Nd-Ikl" firstAttribute="leading" secondItem="jdW-oZ-cH8" secondAttribute="leading" id="Bnm-Im-c7M"/>
+ <constraint firstItem="G9c-Nd-Ikl" firstAttribute="centerY" secondItem="jdW-oZ-cH8" secondAttribute="centerY" id="Jxk-cZ-ezx"/>
+ <constraint firstItem="Olg-V3-URE" firstAttribute="centerY" secondItem="jdW-oZ-cH8" secondAttribute="centerY" id="RXs-zW-MT4"/>
+ <constraint firstItem="Olg-V3-URE" firstAttribute="leading" secondItem="G9c-Nd-Ikl" secondAttribute="trailing" constant="10" id="XZo-QH-gpr"/>
+ <constraint firstItem="SbT-rU-lJ8" firstAttribute="leading" secondItem="Olg-V3-URE" secondAttribute="trailing" constant="5" id="wW2-QT-gGz"/>
+ <constraint firstAttribute="trailing" secondItem="SbT-rU-lJ8" secondAttribute="trailing" constant="5" id="z63-kb-OIf"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="mSC-JU-xuk" userLabel="external Site">
+ <rect key="frame" x="0.0" y="50" width="404" height="50"/>
+ <subviews>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="externalsites" translatesAutoresizingMaskIntoConstraints="NO" id="JWO-C0-32L">
+ <rect key="frame" x="0.0" y="10" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="30" id="cuQ-hf-WGC"/>
+ <constraint firstAttribute="width" constant="30" id="hun-lk-Hyf"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="External site" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="g2c-tp-kiW">
+ <rect key="frame" x="40" y="16" width="234" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ivv-te-kaP">
+ <rect key="frame" x="279" y="12.5" width="120" height="25"/>
+ <constraints>
+ <constraint firstAttribute="width" constant="120" id="KRE-Ez-UvG"/>
+ <constraint firstAttribute="height" constant="25" id="xhy-Qg-h6R"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstAttribute="trailing" secondItem="ivv-te-kaP" secondAttribute="trailing" constant="5" id="4K1-tJ-Cun"/>
+ <constraint firstItem="JWO-C0-32L" firstAttribute="centerY" secondItem="mSC-JU-xuk" secondAttribute="centerY" id="FLD-bX-ETy"/>
+ <constraint firstItem="ivv-te-kaP" firstAttribute="leading" secondItem="g2c-tp-kiW" secondAttribute="trailing" constant="5" id="VuF-Q1-hEp"/>
+ <constraint firstItem="g2c-tp-kiW" firstAttribute="leading" secondItem="JWO-C0-32L" secondAttribute="trailing" constant="10" id="fWw-rx-nFV"/>
+ <constraint firstAttribute="height" constant="50" id="pLI-AP-DaV"/>
+ <constraint firstItem="JWO-C0-32L" firstAttribute="leading" secondItem="mSC-JU-xuk" secondAttribute="leading" id="pyK-ZG-7fZ"/>
+ <constraint firstItem="g2c-tp-kiW" firstAttribute="centerY" secondItem="mSC-JU-xuk" secondAttribute="centerY" id="rtm-fS-6ec"/>
+ <constraint firstItem="ivv-te-kaP" firstAttribute="centerY" secondItem="mSC-JU-xuk" secondAttribute="centerY" id="wCm-7E-nJ3"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="nVq-4i-FNy" userLabel="end to end encryption">
+ <rect key="frame" x="0.0" y="100" width="404" height="50"/>
+ <subviews>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="lock" translatesAutoresizingMaskIntoConstraints="NO" id="S7m-5Z-ktw">
+ <rect key="frame" x="0.0" y="10" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="30" id="edD-t9-G1B"/>
+ <constraint firstAttribute="width" constant="30" id="nPu-CX-Ilf"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="End-to-End Encryption" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="5cZ-yL-XdC">
+ <rect key="frame" x="40" y="16" width="234" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="M82-8U-M4Q">
+ <rect key="frame" x="279" y="12.5" width="120" height="25"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="25" id="L0G-30-siH"/>
+ <constraint firstAttribute="width" constant="120" id="z0Z-Hz-edq"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstItem="5cZ-yL-XdC" firstAttribute="leading" secondItem="S7m-5Z-ktw" secondAttribute="trailing" constant="10" id="HOl-vJ-SDL"/>
+ <constraint firstAttribute="height" constant="50" id="X1d-TH-FfQ"/>
+ <constraint firstItem="S7m-5Z-ktw" firstAttribute="centerY" secondItem="nVq-4i-FNy" secondAttribute="centerY" id="cUj-Mb-Gza"/>
+ <constraint firstItem="5cZ-yL-XdC" firstAttribute="centerY" secondItem="nVq-4i-FNy" secondAttribute="centerY" id="fKw-6d-s4Z"/>
+ <constraint firstItem="M82-8U-M4Q" firstAttribute="centerY" secondItem="nVq-4i-FNy" secondAttribute="centerY" id="nnA-zZ-9te"/>
+ <constraint firstItem="S7m-5Z-ktw" firstAttribute="leading" secondItem="nVq-4i-FNy" secondAttribute="leading" id="sX7-dg-Goj"/>
+ <constraint firstItem="M82-8U-M4Q" firstAttribute="leading" secondItem="5cZ-yL-XdC" secondAttribute="trailing" constant="5" id="vjo-Od-7Gr"/>
+ <constraint firstAttribute="trailing" secondItem="M82-8U-M4Q" secondAttribute="trailing" constant="5" id="zg8-Za-Rla"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="00l-HL-Ljt" userLabel="Paginated file listing">
+ <rect key="frame" x="0.0" y="150" width="404" height="50"/>
+ <subviews>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="application" translatesAutoresizingMaskIntoConstraints="NO" id="itj-Iy-gT3">
+ <rect key="frame" x="0.0" y="10" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="30" id="icz-0x-wCa"/>
+ <constraint firstAttribute="width" constant="30" id="xkh-qv-Wab"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Paginated file listing" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="I1b-pS-pZW">
+ <rect key="frame" x="40" y="16" width="138" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="zZ2-UK-v5K">
+ <rect key="frame" x="279" y="12.5" width="120" height="25"/>
+ <constraints>
+ <constraint firstAttribute="width" constant="120" id="aKE-lB-GjU"/>
+ <constraint firstAttribute="height" constant="25" id="gme-gx-kFL"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstItem="zZ2-UK-v5K" firstAttribute="centerY" secondItem="00l-HL-Ljt" secondAttribute="centerY" id="0yf-5K-RI8"/>
+ <constraint firstItem="itj-Iy-gT3" firstAttribute="leading" secondItem="00l-HL-Ljt" secondAttribute="leading" id="6Tv-PY-cGe"/>
+ <constraint firstItem="I1b-pS-pZW" firstAttribute="leading" secondItem="itj-Iy-gT3" secondAttribute="trailing" constant="10" id="Bau-hD-p3I"/>
+ <constraint firstAttribute="trailing" secondItem="zZ2-UK-v5K" secondAttribute="trailing" constant="5" id="KVd-kr-ad5"/>
+ <constraint firstItem="I1b-pS-pZW" firstAttribute="centerY" secondItem="00l-HL-Ljt" secondAttribute="centerY" id="M4w-pF-R15"/>
+ <constraint firstAttribute="height" constant="50" id="VGW-NP-Uc9"/>
+ <constraint firstItem="itj-Iy-gT3" firstAttribute="centerY" secondItem="00l-HL-Ljt" secondAttribute="centerY" id="Xrk-d6-YVH"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="lGp-bh-Ysz" userLabel="Activity">
+ <rect key="frame" x="0.0" y="200" width="404" height="50"/>
+ <subviews>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="activity" translatesAutoresizingMaskIntoConstraints="NO" id="tl5-S1-p9X">
+ <rect key="frame" x="0.0" y="10" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="30" id="Hb3-9B-Zsk"/>
+ <constraint firstAttribute="width" constant="30" id="Zmw-Ck-dGs"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Activity" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="SIY-IW-w6O">
+ <rect key="frame" x="40" y="16" width="51" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dyb-1O-dIA">
+ <rect key="frame" x="279" y="12.5" width="120" height="25"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="25" id="C3a-Ec-xJv"/>
+ <constraint firstAttribute="width" constant="120" id="IB5-Hq-R4j"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstAttribute="trailing" secondItem="dyb-1O-dIA" secondAttribute="trailing" constant="5" id="0fh-7J-NUN"/>
+ <constraint firstAttribute="height" constant="50" id="OMI-4q-89Q"/>
+ <constraint firstItem="dyb-1O-dIA" firstAttribute="centerY" secondItem="lGp-bh-Ysz" secondAttribute="centerY" id="OPb-RB-lic"/>
+ <constraint firstItem="SIY-IW-w6O" firstAttribute="leading" secondItem="tl5-S1-p9X" secondAttribute="trailing" constant="10" id="Q9g-cC-zme"/>
+ <constraint firstItem="tl5-S1-p9X" firstAttribute="leading" secondItem="lGp-bh-Ysz" secondAttribute="leading" id="cFK-we-PT6"/>
+ <constraint firstItem="tl5-S1-p9X" firstAttribute="centerY" secondItem="lGp-bh-Ysz" secondAttribute="centerY" id="fyW-bz-dN0"/>
+ <constraint firstItem="SIY-IW-w6O" firstAttribute="centerY" secondItem="lGp-bh-Ysz" secondAttribute="centerY" id="xCh-5R-1WK"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="UPC-L1-VKj" userLabel="Notification">
+ <rect key="frame" x="0.0" y="250" width="404" height="50"/>
+ <subviews>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="notification" translatesAutoresizingMaskIntoConstraints="NO" id="cgb-3g-trc">
+ <rect key="frame" x="0.0" y="10" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="30" id="3RZ-6t-QNW"/>
+ <constraint firstAttribute="width" constant="30" id="Rpr-ox-Bhc"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Notification" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="W6x-fO-A6L">
+ <rect key="frame" x="40" y="16" width="79" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="WAg-Hw-sQS">
+ <rect key="frame" x="279" y="12.5" width="120" height="25"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="25" id="NEz-tu-8Rk"/>
+ <constraint firstAttribute="width" constant="120" id="zjs-JE-2aB"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstItem="cgb-3g-trc" firstAttribute="centerY" secondItem="UPC-L1-VKj" secondAttribute="centerY" id="28g-Vd-Pdh"/>
+ <constraint firstItem="W6x-fO-A6L" firstAttribute="centerY" secondItem="UPC-L1-VKj" secondAttribute="centerY" id="Ah1-f7-KrB"/>
+ <constraint firstAttribute="trailing" secondItem="WAg-Hw-sQS" secondAttribute="trailing" constant="5" id="BpJ-RQ-B1k"/>
+ <constraint firstItem="WAg-Hw-sQS" firstAttribute="centerY" secondItem="UPC-L1-VKj" secondAttribute="centerY" id="OGo-Ns-IU0"/>
+ <constraint firstAttribute="height" constant="50" id="VOs-so-anE"/>
+ <constraint firstItem="cgb-3g-trc" firstAttribute="leading" secondItem="UPC-L1-VKj" secondAttribute="leading" id="e2z-tZ-5bX"/>
+ <constraint firstItem="W6x-fO-A6L" firstAttribute="leading" secondItem="cgb-3g-trc" secondAttribute="trailing" constant="10" id="zGE-fg-e3h"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="8nf-zJ-Qas" userLabel="Notification">
+ <rect key="frame" x="0.0" y="300" width="404" height="50"/>
+ <subviews>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="delete" translatesAutoresizingMaskIntoConstraints="NO" id="8Zc-9W-n27">
+ <rect key="frame" x="0.0" y="10" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="width" constant="30" id="GE1-Yd-rOr"/>
+ <constraint firstAttribute="height" constant="30" id="aQW-Uy-znK"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Deleted files" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="EVN-t6-jzB">
+ <rect key="frame" x="40" y="16" width="85.5" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="8hg-qK-qvz">
+ <rect key="frame" x="279" y="12.5" width="120" height="25"/>
+ <constraints>
+ <constraint firstAttribute="width" constant="120" id="Ns2-PG-H7R"/>
+ <constraint firstAttribute="height" constant="25" id="b2x-qE-hf6"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstItem="8Zc-9W-n27" firstAttribute="leading" secondItem="8nf-zJ-Qas" secondAttribute="leading" id="0gl-yZ-NHn"/>
+ <constraint firstItem="EVN-t6-jzB" firstAttribute="centerY" secondItem="8nf-zJ-Qas" secondAttribute="centerY" id="5dv-S0-9bY"/>
+ <constraint firstItem="8Zc-9W-n27" firstAttribute="centerY" secondItem="8nf-zJ-Qas" secondAttribute="centerY" id="9H1-hH-E2o"/>
+ <constraint firstAttribute="height" constant="50" id="NJt-Ob-qAJ"/>
+ <constraint firstAttribute="trailing" secondItem="8hg-qK-qvz" secondAttribute="trailing" constant="5" id="VS2-55-BeI"/>
+ <constraint firstItem="8hg-qK-qvz" firstAttribute="centerY" secondItem="8nf-zJ-Qas" secondAttribute="centerY" id="ceB-3o-Qpt"/>
+ <constraint firstItem="EVN-t6-jzB" firstAttribute="leading" secondItem="8Zc-9W-n27" secondAttribute="trailing" constant="10" id="rDk-Z6-y2x"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ZNB-jF-9zg" userLabel="direct editing">
+ <rect key="frame" x="0.0" y="350" width="404" height="50"/>
+ <subviews>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="text" translatesAutoresizingMaskIntoConstraints="NO" id="iCB-2A-phO">
+ <rect key="frame" x="0.0" y="10" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="width" constant="30" id="Ww6-2V-i4r"/>
+ <constraint firstAttribute="height" constant="30" id="kdP-OK-U2a"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Text" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="FOv-Ld-QFB">
+ <rect key="frame" x="40" y="16" width="29" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="uiz-H8-p3D">
+ <rect key="frame" x="279" y="12.5" width="120" height="25"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="25" id="Eqf-R1-eKB"/>
+ <constraint firstAttribute="width" constant="120" id="i0a-tu-JgU"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstItem="uiz-H8-p3D" firstAttribute="centerY" secondItem="ZNB-jF-9zg" secondAttribute="centerY" id="0dR-3w-1sQ"/>
+ <constraint firstAttribute="height" constant="50" id="4UX-0n-U4U"/>
+ <constraint firstAttribute="trailing" secondItem="uiz-H8-p3D" secondAttribute="trailing" constant="5" id="Rma-z3-oCf"/>
+ <constraint firstItem="iCB-2A-phO" firstAttribute="leading" secondItem="ZNB-jF-9zg" secondAttribute="leading" id="cF1-co-eQB"/>
+ <constraint firstItem="iCB-2A-phO" firstAttribute="centerY" secondItem="ZNB-jF-9zg" secondAttribute="centerY" id="gSQ-hN-iBx"/>
+ <constraint firstItem="FOv-Ld-QFB" firstAttribute="leading" secondItem="iCB-2A-phO" secondAttribute="trailing" constant="10" id="kiE-oZ-ky6"/>
+ <constraint firstItem="FOv-Ld-QFB" firstAttribute="centerY" secondItem="ZNB-jF-9zg" secondAttribute="centerY" id="vHG-Fk-kEj"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="dhs-06-3RT" userLabel="Collabora">
+ <rect key="frame" x="0.0" y="400" width="404" height="50"/>
+ <subviews>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="collabora" translatesAutoresizingMaskIntoConstraints="NO" id="GXZ-Rj-WCE">
+ <rect key="frame" x="0.0" y="10" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="30" id="kcH-Br-yZB"/>
+ <constraint firstAttribute="width" constant="30" id="ros-hl-Jec"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Collabora" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="IJ7-i8-AvX">
+ <rect key="frame" x="40" y="16" width="65.5" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="30w-oC-gZl">
+ <rect key="frame" x="279" y="12.5" width="120" height="25"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="25" id="E6x-vP-Fs9"/>
+ <constraint firstAttribute="width" constant="120" id="nGc-gZ-jaG"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstItem="30w-oC-gZl" firstAttribute="centerY" secondItem="dhs-06-3RT" secondAttribute="centerY" id="0G9-Hl-zZn"/>
+ <constraint firstItem="IJ7-i8-AvX" firstAttribute="centerY" secondItem="dhs-06-3RT" secondAttribute="centerY" id="8Rv-kP-XDs"/>
+ <constraint firstItem="GXZ-Rj-WCE" firstAttribute="centerY" secondItem="dhs-06-3RT" secondAttribute="centerY" id="DiJ-1E-bIC"/>
+ <constraint firstItem="IJ7-i8-AvX" firstAttribute="leading" secondItem="GXZ-Rj-WCE" secondAttribute="trailing" constant="10" id="M7l-uB-RhH"/>
+ <constraint firstAttribute="trailing" secondItem="30w-oC-gZl" secondAttribute="trailing" constant="5" id="XrQ-4B-UnP"/>
+ <constraint firstItem="GXZ-Rj-WCE" firstAttribute="leading" secondItem="dhs-06-3RT" secondAttribute="leading" id="lCd-tJ-nvi"/>
+ <constraint firstAttribute="height" constant="50" id="xgw-IO-enA"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="LTt-2C-rPb" userLabel="OnlyOffice">
+ <rect key="frame" x="0.0" y="450" width="404" height="50"/>
+ <subviews>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="onlyoffice" translatesAutoresizingMaskIntoConstraints="NO" id="xvv-h0-9bM">
+ <rect key="frame" x="0.0" y="10" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="width" constant="30" id="bUx-KW-ZGu"/>
+ <constraint firstAttribute="height" constant="30" id="wKp-TM-dCw"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="ONLYOFFICE" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Tq3-cS-wup">
+ <rect key="frame" x="40" y="16" width="89.5" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Available" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ucV-YG-5ht">
+ <rect key="frame" x="279" y="12.5" width="120" height="25"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="25" id="8Xe-4g-RxY"/>
+ <constraint firstAttribute="width" constant="120" id="m3G-CE-aso"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="12"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstItem="Tq3-cS-wup" firstAttribute="leading" secondItem="xvv-h0-9bM" secondAttribute="trailing" constant="10" id="G34-W8-fhW"/>
+ <constraint firstAttribute="height" constant="50" id="Glo-gX-j6q"/>
+ <constraint firstItem="xvv-h0-9bM" firstAttribute="centerY" secondItem="LTt-2C-rPb" secondAttribute="centerY" id="mYd-TV-lVh"/>
+ <constraint firstItem="ucV-YG-5ht" firstAttribute="centerY" secondItem="LTt-2C-rPb" secondAttribute="centerY" id="qmu-3J-9Xj"/>
+ <constraint firstAttribute="trailing" secondItem="ucV-YG-5ht" secondAttribute="trailing" constant="5" id="tva-Qw-rYM"/>
+ <constraint firstItem="xvv-h0-9bM" firstAttribute="leading" secondItem="LTt-2C-rPb" secondAttribute="leading" id="vkH-IQ-IUb"/>
+ <constraint firstItem="Tq3-cS-wup" firstAttribute="centerY" secondItem="LTt-2C-rPb" secondAttribute="centerY" id="xlI-tP-AMe"/>
+ </constraints>
+ </view>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstItem="lGp-bh-Ysz" firstAttribute="leading" secondItem="Sms-Ez-fLO" secondAttribute="leading" id="0qE-PV-O2f"/>
+ <constraint firstAttribute="trailing" secondItem="8nf-zJ-Qas" secondAttribute="trailing" id="0vv-HQ-Qqx"/>
+ <constraint firstAttribute="height" constant="500" id="6nU-Cb-MzH"/>
+ <constraint firstAttribute="trailing" secondItem="00l-HL-Ljt" secondAttribute="trailing" id="8KN-x1-W0c"/>
+ <constraint firstItem="mSC-JU-xuk" firstAttribute="leading" secondItem="Sms-Ez-fLO" secondAttribute="leading" id="9Nq-du-3ah"/>
+ <constraint firstItem="lGp-bh-Ysz" firstAttribute="top" secondItem="00l-HL-Ljt" secondAttribute="bottom" id="Feq-pd-Vch"/>
+ <constraint firstItem="ZNB-jF-9zg" firstAttribute="leading" secondItem="Sms-Ez-fLO" secondAttribute="leading" id="GdE-lt-vZC"/>
+ <constraint firstAttribute="trailing" secondItem="nVq-4i-FNy" secondAttribute="trailing" id="HSG-Ia-fYc"/>
+ <constraint firstItem="LTt-2C-rPb" firstAttribute="top" secondItem="dhs-06-3RT" secondAttribute="bottom" id="Nm6-NH-AC9"/>
+ <constraint firstItem="UPC-L1-VKj" firstAttribute="leading" secondItem="Sms-Ez-fLO" secondAttribute="leading" id="QcN-sd-pHM"/>
+ <constraint firstItem="LTt-2C-rPb" firstAttribute="leading" secondItem="Sms-Ez-fLO" secondAttribute="leading" id="SUy-Mo-oAO"/>
+ <constraint firstItem="00l-HL-Ljt" firstAttribute="leading" secondItem="Sms-Ez-fLO" secondAttribute="leading" id="SkB-av-5lO"/>
+ <constraint firstItem="00l-HL-Ljt" firstAttribute="top" secondItem="nVq-4i-FNy" secondAttribute="bottom" id="TdY-oP-UfF"/>
+ <constraint firstItem="jdW-oZ-cH8" firstAttribute="top" secondItem="Sms-Ez-fLO" secondAttribute="top" id="UBW-Mx-NTs"/>
+ <constraint firstItem="8nf-zJ-Qas" firstAttribute="top" secondItem="UPC-L1-VKj" secondAttribute="bottom" id="UqS-Lx-6mL"/>
+ <constraint firstItem="dhs-06-3RT" firstAttribute="leading" secondItem="Sms-Ez-fLO" secondAttribute="leading" id="UwG-6b-pEk"/>
+ <constraint firstItem="nVq-4i-FNy" firstAttribute="top" secondItem="mSC-JU-xuk" secondAttribute="bottom" id="VfU-sj-S9y"/>
+ <constraint firstAttribute="trailing" secondItem="lGp-bh-Ysz" secondAttribute="trailing" id="bUd-8w-D8k"/>
+ <constraint firstItem="UPC-L1-VKj" firstAttribute="top" secondItem="lGp-bh-Ysz" secondAttribute="bottom" id="br5-nz-w7h"/>
+ <constraint firstItem="8nf-zJ-Qas" firstAttribute="leading" secondItem="Sms-Ez-fLO" secondAttribute="leading" id="dsm-XA-dZD"/>
+ <constraint firstItem="jdW-oZ-cH8" firstAttribute="leading" secondItem="Sms-Ez-fLO" secondAttribute="leading" id="eNi-cO-UFd"/>
+ <constraint firstItem="nVq-4i-FNy" firstAttribute="leading" secondItem="Sms-Ez-fLO" secondAttribute="leading" id="efi-mm-hvP"/>
+ <constraint firstAttribute="trailing" secondItem="LTt-2C-rPb" secondAttribute="trailing" id="erZ-V1-p76"/>
+ <constraint firstAttribute="trailing" secondItem="UPC-L1-VKj" secondAttribute="trailing" id="f2Y-D9-fMV"/>
+ <constraint firstAttribute="trailing" secondItem="dhs-06-3RT" secondAttribute="trailing" id="ijj-gU-Gdk"/>
+ <constraint firstAttribute="trailing" secondItem="jdW-oZ-cH8" secondAttribute="trailing" id="k81-ap-Nwy"/>
+ <constraint firstItem="dhs-06-3RT" firstAttribute="top" secondItem="ZNB-jF-9zg" secondAttribute="bottom" id="mJv-Ta-ZbY"/>
+ <constraint firstAttribute="trailing" secondItem="mSC-JU-xuk" secondAttribute="trailing" id="pBU-xQ-0qV"/>
+ <constraint firstAttribute="trailing" secondItem="ZNB-jF-9zg" secondAttribute="trailing" id="v5H-SV-MvM"/>
+ <constraint firstItem="ZNB-jF-9zg" firstAttribute="top" secondItem="8nf-zJ-Qas" secondAttribute="bottom" id="w6t-hz-cPZ"/>
+ <constraint firstItem="mSC-JU-xuk" firstAttribute="top" secondItem="jdW-oZ-cH8" secondAttribute="bottom" id="y2u-2j-cif"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ogC-ph-Xdr" userLabel="View Link">
+ <rect key="frame" x="5" y="505" width="404" height="90"/>
+ <subviews>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Home server" textAlignment="natural" lineBreakMode="characterWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="PD5-8h-ZLm">
+ <rect key="frame" x="40" y="0.0" width="359" height="40"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="40" id="hBZ-cQ-ZHg"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="home" translatesAutoresizingMaskIntoConstraints="NO" id="pyf-iS-YYP">
+ <rect key="frame" x="0.0" y="5" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="30" id="LkI-Fd-YBH"/>
+ <constraint firstAttribute="width" constant="30" id="SVh-sE-fdn"/>
+ </constraints>
+ </imageView>
+ <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="dav" translatesAutoresizingMaskIntoConstraints="NO" id="Tlp-7L-xxK">
+ <rect key="frame" x="0.0" y="50" width="30" height="30"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="30" id="rLb-Wg-jyl"/>
+ <constraint firstAttribute="width" constant="30" id="uBn-NU-oCg"/>
+ </constraints>
+ </imageView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="DAV" textAlignment="natural" lineBreakMode="characterWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="q89-9y-xvK">
+ <rect key="frame" x="40" y="45" width="359" height="40"/>
+ <constraints>
+ <constraint firstAttribute="height" constant="40" id="Y1A-ji-0GZ"/>
+ </constraints>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstAttribute="trailing" secondItem="PD5-8h-ZLm" secondAttribute="trailing" constant="5" id="71i-FN-PmV"/>
+ <constraint firstItem="q89-9y-xvK" firstAttribute="top" secondItem="PD5-8h-ZLm" secondAttribute="bottom" constant="5" id="7Fy-Hw-dJJ"/>
+ <constraint firstItem="pyf-iS-YYP" firstAttribute="leading" secondItem="ogC-ph-Xdr" secondAttribute="leading" id="D7Q-nx-Lcr"/>
+ <constraint firstAttribute="height" constant="90" id="HZv-dy-zeu"/>
+ <constraint firstAttribute="trailing" secondItem="q89-9y-xvK" secondAttribute="trailing" constant="5" id="Hea-W8-yyG"/>
+ <constraint firstItem="q89-9y-xvK" firstAttribute="leading" secondItem="Tlp-7L-xxK" secondAttribute="trailing" constant="10" id="SA4-nu-KU9"/>
+ <constraint firstItem="Tlp-7L-xxK" firstAttribute="top" secondItem="pyf-iS-YYP" secondAttribute="bottom" constant="15" id="evE-Ew-zMu"/>
+ <constraint firstItem="Tlp-7L-xxK" firstAttribute="leading" secondItem="ogC-ph-Xdr" secondAttribute="leading" id="gCa-6C-ZmV"/>
+ <constraint firstItem="PD5-8h-ZLm" firstAttribute="top" secondItem="ogC-ph-Xdr" secondAttribute="top" id="m3v-SO-f43"/>
+ <constraint firstItem="PD5-8h-ZLm" firstAttribute="leading" secondItem="pyf-iS-YYP" secondAttribute="trailing" constant="10" id="pD9-5x-n4a"/>
+ <constraint firstItem="pyf-iS-YYP" firstAttribute="top" secondItem="ogC-ph-Xdr" secondAttribute="top" constant="5" id="uht-S6-R6J"/>
+ </constraints>
+ </view>
+ <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="OO4-N7-9vp" userLabel="View JSON">
+ <rect key="frame" x="0.0" y="595" width="414" height="68"/>
+ <subviews>
+ <textView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" scrollEnabled="NO" editable="NO" textAlignment="natural" translatesAutoresizingMaskIntoConstraints="NO" id="RIO-6X-GG1">
+ <rect key="frame" x="5" y="30" width="404" height="33"/>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <fontDescription key="fontDescription" type="system" pointSize="14"/>
+ <textInputTraits key="textInputTraits" autocapitalizationType="sentences"/>
+ </textView>
+ <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hqP-sH-lSo">
+ <rect key="frame" x="5" y="0.0" width="404" height="18"/>
+ <fontDescription key="fontDescription" type="system" pointSize="15"/>
+ <nil key="textColor"/>
+ <nil key="highlightedColor"/>
+ </label>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstItem="RIO-6X-GG1" firstAttribute="leading" secondItem="OO4-N7-9vp" secondAttribute="leading" constant="5" id="63w-yC-mGi"/>
+ <constraint firstItem="hqP-sH-lSo" firstAttribute="top" secondItem="OO4-N7-9vp" secondAttribute="top" id="7tR-gf-nae"/>
+ <constraint firstAttribute="trailing" secondItem="RIO-6X-GG1" secondAttribute="trailing" constant="5" id="9cj-M6-K3f"/>
+ <constraint firstItem="hqP-sH-lSo" firstAttribute="leading" secondItem="OO4-N7-9vp" secondAttribute="leading" constant="5" id="HXp-td-pyQ"/>
+ <constraint firstItem="RIO-6X-GG1" firstAttribute="top" secondItem="OO4-N7-9vp" secondAttribute="top" constant="30" id="ODH-TK-qMG"/>
+ <constraint firstAttribute="bottom" secondItem="RIO-6X-GG1" secondAttribute="bottom" constant="5" id="ajP-yK-idK"/>
+ <constraint firstAttribute="trailing" secondItem="hqP-sH-lSo" secondAttribute="trailing" constant="5" id="fLN-ek-dgd"/>
+ </constraints>
+ </view>
+ </subviews>
+ <constraints>
+ <constraint firstItem="ogC-ph-Xdr" firstAttribute="top" secondItem="hTE-ys-qsF" secondAttribute="top" constant="505" id="9yP-Qs-EjJ"/>
+ <constraint firstItem="OO4-N7-9vp" firstAttribute="top" secondItem="hTE-ys-qsF" secondAttribute="top" constant="595" id="A9O-TK-Vz6" userLabel="View JSON.top = top + 550"/>
+ <constraint firstAttribute="trailing" secondItem="ogC-ph-Xdr" secondAttribute="trailing" constant="5" id="JLe-vC-Oyq"/>
+ <constraint firstAttribute="bottom" secondItem="OO4-N7-9vp" secondAttribute="bottom" id="MpX-OZ-MDh"/>
+ <constraint firstItem="OO4-N7-9vp" firstAttribute="width" secondItem="hTE-ys-qsF" secondAttribute="width" id="PWW-C3-Qcw"/>
+ <constraint firstItem="OO4-N7-9vp" firstAttribute="leading" secondItem="hTE-ys-qsF" secondAttribute="leading" id="Q4I-CY-qdY"/>
+ <constraint firstAttribute="trailing" secondItem="OO4-N7-9vp" secondAttribute="trailing" id="cmw-yc-oJP"/>
+ <constraint firstAttribute="trailing" secondItem="Sms-Ez-fLO" secondAttribute="trailing" constant="5" id="coa-ak-YgW"/>
+ <constraint firstItem="ogC-ph-Xdr" firstAttribute="leading" secondItem="hTE-ys-qsF" secondAttribute="leading" constant="5" id="dBH-cz-20F"/>
+ <constraint firstItem="Sms-Ez-fLO" firstAttribute="leading" secondItem="hTE-ys-qsF" secondAttribute="leading" constant="5" id="rIR-0f-qtc"/>
+ <constraint firstItem="Sms-Ez-fLO" firstAttribute="top" secondItem="hTE-ys-qsF" secondAttribute="top" constant="5" id="tsB-Td-qaK"/>
+ </constraints>
+ </scrollView>
+ </subviews>
+ <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
+ <constraints>
+ <constraint firstItem="uBS-U0-Obf" firstAttribute="trailing" secondItem="hTE-ys-qsF" secondAttribute="trailing" id="CvM-Hx-Hy6"/>
+ <constraint firstItem="hTE-ys-qsF" firstAttribute="top" secondItem="uBS-U0-Obf" secondAttribute="top" id="Lar-wg-a7V"/>
+ <constraint firstItem="hTE-ys-qsF" firstAttribute="leading" secondItem="uBS-U0-Obf" secondAttribute="leading" id="Mye-Fv-DDH"/>
+ <constraint firstItem="uBS-U0-Obf" firstAttribute="bottom" secondItem="hTE-ys-qsF" secondAttribute="bottom" id="aJj-P3-LeK"/>
+ </constraints>
+ <viewLayoutGuide key="safeArea" id="uBS-U0-Obf"/>
+ </view>
+ <navigationItem key="navigationItem" id="fnR-ht-Muv"/>
+ <connections>
+ <outlet property="davFiles" destination="q89-9y-xvK" id="eHD-Ph-7x2"/>
+ <outlet property="davImage" destination="Tlp-7L-xxK" id="K25-ye-TED"/>
+ <outlet property="homeImage" destination="pyf-iS-YYP" id="gAh-bM-f5J"/>
+ <outlet property="homeServer" destination="PD5-8h-ZLm" id="Hge-8o-YY1"/>
+ <outlet property="imageActivity" destination="tl5-S1-p9X" id="pT5-X7-R2q"/>
+ <outlet property="imageCollabora" destination="GXZ-Rj-WCE" id="cOv-xH-ZKC"/>
+ <outlet property="imageDeletedFiles" destination="8Zc-9W-n27" id="XYP-JN-JFc"/>
+ <outlet property="imageEndToEndEncryption" destination="S7m-5Z-ktw" id="0Pv-Yt-YJB"/>
+ <outlet property="imageExternalSite" destination="JWO-C0-32L" id="JKi-n1-5IQ"/>
+ <outlet property="imageFileSharing" destination="G9c-Nd-Ikl" id="Wha-2g-8o0"/>
+ <outlet property="imageNotification" destination="cgb-3g-trc" id="fa5-99-76C"/>
+ <outlet property="imageOnlyOffice" destination="xvv-h0-9bM" id="tw2-is-KHy"/>
+ <outlet property="imagePaginatedFileListing" destination="itj-Iy-gT3" id="9Zj-fQ-eRC"/>
+ <outlet property="imageText" destination="iCB-2A-phO" id="uit-Ku-oOF"/>
+ <outlet property="statusActivity" destination="dyb-1O-dIA" id="BfC-ZI-Wcr"/>
+ <outlet property="statusCollabora" destination="30w-oC-gZl" id="wnj-OE-UQZ"/>
+ <outlet property="statusDeletedFiles" destination="8hg-qK-qvz" id="xtt-gI-H0a"/>
+ <outlet property="statusEndToEndEncryption" destination="M82-8U-M4Q" id="S9e-h3-GpF"/>
+ <outlet property="statusExternalSite" destination="ivv-te-kaP" id="qzS-eo-Dq3"/>
+ <outlet property="statusFileSharing" destination="SbT-rU-lJ8" id="zqA-0V-TLr"/>
+ <outlet property="statusNotification" destination="WAg-Hw-sQS" id="T5C-Ch-11o"/>
+ <outlet property="statusOnlyOffice" destination="ucV-YG-5ht" id="11e-La-p9K"/>
+ <outlet property="statusPaginatedFileListing" destination="zZ2-UK-v5K" id="ocu-ZZ-Ydz"/>
+ <outlet property="statusText" destination="uiz-H8-p3D" id="wLb-D2-MNS"/>
+ <outlet property="textView" destination="RIO-6X-GG1" id="lPs-Ev-hQf"/>
+ <outlet property="titleCapabilities" destination="hqP-sH-lSo" id="owK-UK-6Hb"/>
+ </connections>
+ </viewController>
+ <placeholder placeholderIdentifier="IBFirstResponder" id="0OV-l8-tBJ" sceneMemberID="firstResponder"/>
+ </objects>
+ <point key="canvasLocation" x="910.14492753623199" y="133.25892857142856"/>
+ </scene>
+ <!--Navigation Controller-->
+ <scene sceneID="YbF-Ed-KAp">
+ <objects>
+ <navigationController automaticallyAdjustsScrollViewInsets="NO" id="vTK-Er-kbZ" sceneMemberID="viewController">
+ <toolbarItems/>
+ <navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="f2L-7c-zw8">
+ <rect key="frame" x="0.0" y="44" width="414" height="44"/>
+ <autoresizingMask key="autoresizingMask"/>
+ </navigationBar>
+ <nil name="viewControllers"/>
+ <connections>
+ <segue destination="7oH-vf-YqN" kind="relationship" relationship="rootViewController" id="ZBj-sH-5gE"/>
+ </connections>
+ </navigationController>
+ <placeholder placeholderIdentifier="IBFirstResponder" id="RAt-Xm-BSR" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
+ </objects>
+ <point key="canvasLocation" x="0.0" y="133.25892857142856"/>
+ </scene>
+ </scenes>
+ <resources>
+ <image name="activity" width="512" height="512"/>
+ <image name="application" width="425" height="425"/>
+ <image name="collabora" width="425" height="425"/>
+ <image name="dav" width="425" height="425"/>
+ <image name="delete" width="425" height="425"/>
+ <image name="externalsites" width="425" height="425"/>
+ <image name="home" width="425" height="425"/>
+ <image name="lock" width="300" height="300"/>
+ <image name="notification" width="512" height="512"/>
+ <image name="onlyoffice" width="425" height="425"/>
+ <image name="share" width="512" height="512"/>
+ <image name="text" width="425" height="425"/>
+ </resources>
+</document>
diff --git a/iOSClient/Diagnostics/NCDiagnosticViewController.swift b/iOSClient/Diagnostics/NCDiagnosticViewController.swift
new file mode 100644
index 000000000..1e463b15f
--- /dev/null
+++ b/iOSClient/Diagnostics/NCDiagnosticViewController.swift
@@ -0,0 +1,308 @@
+//
+// NCDiagnosticViewController.swift
+// Nextcloud
+//
+// Created by Marino Faggiana on 28/07/2020.
+// Copyright © 2020 Marino Faggiana. All rights reserved.
+//
+// Author Marino Faggiana <marino.faggiana@nextcloud.com>
+//
+// 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
+import NCCommunication
+
+class NCDiagnosticViewController: UIViewController, UIDocumentInteractionControllerDelegate {
+
+ @IBOutlet weak var textView: UITextView!
+
+ @IBOutlet weak var imageFileSharing: UIImageView!
+ @IBOutlet weak var statusFileSharing: UILabel!
+
+ @IBOutlet weak var imageExternalSite: UIImageView!
+ @IBOutlet weak var statusExternalSite: UILabel!
+
+ @IBOutlet weak var imageEndToEndEncryption: UIImageView!
+ @IBOutlet weak var statusEndToEndEncryption: UILabel!
+
+ @IBOutlet weak var imagePaginatedFileListing: UIImageView!
+ @IBOutlet weak var statusPaginatedFileListing: UILabel!
+
+ @IBOutlet weak var imageActivity: UIImageView!
+ @IBOutlet weak var statusActivity: UILabel!
+
+ @IBOutlet weak var imageNotification: UIImageView!
+ @IBOutlet weak var statusNotification: UILabel!
+
+ @IBOutlet weak var imageDeletedFiles: UIImageView!
+ @IBOutlet weak var statusDeletedFiles: UILabel!
+
+ @IBOutlet weak var imageText: UIImageView!
+ @IBOutlet weak var statusText: UILabel!
+
+ @IBOutlet weak var imageCollabora: UIImageView!
+ @IBOutlet weak var statusCollabora: UILabel!
+
+ @IBOutlet weak var imageOnlyOffice: UIImageView!
+ @IBOutlet weak var statusOnlyOffice: UILabel!
+
+ @IBOutlet weak var homeImage: UIImageView!
+ @IBOutlet weak var homeServer: UILabel!
+
+ @IBOutlet weak var davImage: UIImageView!
+ @IBOutlet weak var davFiles: UILabel!
+
+ @IBOutlet weak var titleCapabilities: UILabel!
+
+
+ private let appDelegate = UIApplication.shared.delegate as! AppDelegate
+ private var documentController: UIDocumentInteractionController?
+ private var account: String = ""
+ private var capabilitiesText = ""
+ //private var timer: Timer?
+
+ override func viewDidLoad() {
+ super.viewDidLoad()
+
+ self.title = NSLocalizedString("_diagnostics_", comment: "")
+
+ let shareImage = CCGraphics.changeThemingColorImage(UIImage.init(named: "shareFill"), width: 50, height: 50, color: .gray)
+ self.navigationItem.rightBarButtonItem = UIBarButtonItem(image: shareImage, style: UIBarButtonItem.Style.plain, target: self, action: #selector(share))
+ self.navigationItem.leftBarButtonItem = UIBarButtonItem(title: NSLocalizedString("_done_", comment: ""), style: UIBarButtonItem.Style.plain, target: self, action: #selector(close))
+
+ textView.layer.cornerRadius = 15
+ textView.backgroundColor = NCBrandColor.sharedInstance.graySoft
+
+ statusFileSharing.layer.cornerRadius = 12.5
+ statusFileSharing.layer.borderWidth = 0.5
+ statusFileSharing.layer.borderColor = NCBrandColor.sharedInstance.textView.cgColor
+ statusFileSharing.layer.backgroundColor = NCBrandColor.sharedInstance.graySoft.withAlphaComponent(0.3).cgColor
+
+ statusExternalSite.layer.cornerRadius = 12.5
+ statusExternalSite.layer.borderWidth = 0.5
+ statusExternalSite.layer.borderColor = NCBrandColor.sharedInstance.textView.cgColor
+ statusExternalSite.layer.backgroundColor = NCBrandColor.sharedInstance.graySoft.withAlphaComponent(0.3).cgColor
+
+ statusEndToEndEncryption.layer.cornerRadius = 12.5
+ statusEndToEndEncryption.layer.borderWidth = 0.5
+ statusEndToEndEncryption.layer.borderColor = NCBrandColor.sharedInstance.textView.cgColor
+ statusEndToEndEncryption.layer.backgroundColor = NCBrandColor.sharedInstance.graySoft.withAlphaComponent(0.3).cgColor
+
+ statusPaginatedFileListing.layer.cornerRadius = 12.5
+ statusPaginatedFileListing.layer.borderWidth = 0.5
+ statusPaginatedFileListing.layer.borderColor = NCBrandColor.sharedInstance.textView.cgColor
+ statusPaginatedFileListing.layer.backgroundColor = NCBrandColor.sharedInstance.graySoft.withAlphaComponent(0.3).cgColor
+
+ statusActivity.layer.cornerRadius = 12.5
+ statusActivity.layer.borderWidth = 0.5
+ statusActivity.layer.borderColor = NCBrandColor.sharedInstance.textView.cgColor
+ statusActivity.layer.backgroundColor = NCBrandColor.sharedInstance.graySoft.withAlphaComponent(0.3).cgColor
+
+ statusNotification.layer.cornerRadius = 12.5
+ statusNotification.layer.borderWidth = 0.5
+ statusNotification.layer.borderColor = NCBrandColor.sharedInstance.textView.cgColor
+ statusNotification.layer.backgroundColor = NCBrandColor.sharedInstance.graySoft.withAlphaComponent(0.3).cgColor
+
+ statusDeletedFiles.layer.cornerRadius = 12.5
+ statusDeletedFiles.layer.borderWidth = 0.5
+ statusDeletedFiles.layer.borderColor = NCBrandColor.sharedInstance.textView.cgColor
+ statusDeletedFiles.layer.backgroundColor = NCBrandColor.sharedInstance.graySoft.withAlphaComponent(0.3).cgColor
+
+ statusText.layer.cornerRadius = 12.5
+ statusText.layer.borderWidth = 0.5
+ statusText.layer.borderColor = NCBrandColor.sharedInstance.textView.cgColor
+ statusText.layer.backgroundColor = NCBrandColor.sharedInstance.graySoft.withAlphaComponent(0.3).cgColor
+
+ statusCollabora.layer.cornerRadius = 12.5
+ statusCollabora.layer.borderWidth = 0.5
+ statusCollabora.layer.borderColor = NCBrandColor.sharedInstance.textView.cgColor
+ statusCollabora.layer.backgroundColor = NCBrandColor.sharedInstance.graySoft.withAlphaComponent(0.3).cgColor
+
+ statusOnlyOffice.layer.cornerRadius = 12.5
+ statusOnlyOffice.layer.borderWidth = 0.5
+ statusOnlyOffice.layer.borderColor = NCBrandColor.sharedInstance.textView.cgColor
+ statusOnlyOffice.layer.backgroundColor = NCBrandColor.sharedInstance.graySoft.withAlphaComponent(0.3).cgColor
+
+ imageFileSharing.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "share"), width: 100, height: 100, color: .gray)
+ imageExternalSite.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "externalsites"), width: 100, height: 100, color: .gray)
+ imageEndToEndEncryption.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "lock"), width: 100, height: 100, color: .gray)
+ imagePaginatedFileListing.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "application"), width: 100, height: 100, color: .gray)
+ imageActivity.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "activity"), width: 100, height: 100, color: .gray)
+ imageNotification.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "notification"), width: 100, height: 100, color: .gray)
+ imageDeletedFiles.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "delete"), width: 100, height: 100, color: .gray)
+ imageText.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "text"), width: 100, height: 100, color: .gray)
+ imageCollabora.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "collabora"), width: 100, height: 100, color: .gray)
+ imageOnlyOffice.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "onlyoffice"), width: 100, height: 100, color: .gray)
+
+ guard let account = NCManageDatabase.sharedInstance.getAccountActive() else { return }
+ self.account = account.account
+
+ if let text = NCManageDatabase.sharedInstance.getCapabilities(account: account.account) {
+ capabilitiesText = text
+ updateCapabilities()
+ } else {
+ NCContentPresenter.shared.messageNotification("_error_", description: "_no_capabilities_found_", delay: TimeInterval(k_dismissAfterSecond), type: NCContentPresenter.messageType.info, errorCode: Int(k_CCErrorInternalError), forced: true)
+
+ DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) {
+ self.dismiss(animated: true, completion: nil)
+ }
+ }
+
+ homeImage.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "home"), width: 100, height: 100, color: .gray)
+ homeServer.text = NCUtility.shared.getHomeServer(urlBase: appDelegate.urlBase, account: appDelegate.account) + "/"
+
+ davImage.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "dav"), width: 100, height: 100, color: .gray)
+ davFiles.text = appDelegate.urlBase + "/" + NCUtility.shared.getDAV() + "/files/" + appDelegate.user + "/"
+
+ titleCapabilities.text = NSLocalizedString("_capabilities_", comment: "")
+ }
+
+ @objc func updateCapabilities() {
+
+ NCCommunication.shared.getCapabilities() { (account, data, errorCode, errorDescription) in
+ if errorCode == 0 && data != nil {
+ NCManageDatabase.sharedInstance.addCapabilitiesJSon(data!, account: account)
+
+ // EDITORS
+ let serverVersionMajor = NCManageDatabase.sharedInstance.getCapabilitiesServerInt(account: account, elements: NCElementsJSON.shared.capabilitiesVersionMajor)
+ if serverVersionMajor >= k_nextcloud_version_18_0 {
+ NCCommunication.shared.NCTextObtainEditorDetails() { (account, editors, creators, errorCode, errorMessage) in
+ if errorCode == 0 && account == self.appDelegate.account {
+ NCManageDatabase.sharedInstance.addDirectEditing(account: account, editors: editors, creators: creators)
+ self.readCapabilities()
+ }
+ if self.view.window != nil {
+ //self.timer = Timer.scheduledTimer(timeInterval: 5, target: self, selector: #selector(self.updateCapabilities), userInfo: nil, repeats: false)
+ }
+ }
+ } else {
+ if self.view.window != nil {
+ //self.timer = Timer.scheduledTimer(timeInterval: 5, target: self, selector: #selector(self.updateCapabilities), userInfo: nil, repeats: false)
+ }
+ }
+
+ if let text = NCManageDatabase.sharedInstance.getCapabilities(account: account) {
+ self.capabilitiesText = text
+ }
+ self.readCapabilities()
+ }
+ }
+
+ readCapabilities()
+ }
+
+ @objc func share() {
+ //timer?.invalidate()
+ self.dismiss(animated: true) {
+ let fileURL = NSURL.fileURL(withPath: NSTemporaryDirectory(), isDirectory: true).appendingPathComponent("capabilities.txt")
+ do {
+ try self.capabilitiesText.write(to: fileURL, atomically: true, encoding: .utf8)
+ NCMainCommon.sharedInstance.openIn(fileURL: fileURL, selector: nil)
+ } catch { }
+ }
+ }
+
+ @objc func close() {
+ //timer?.invalidate()
+ self.dismiss(animated: true, completion: nil)
+ }
+
+ func readCapabilities() {
+
+ textView.text = capabilitiesText
+
+ if NCManageDatabase.sharedInstance.getCapabilitiesServerBool(account: account, elements: NCElementsJSON.shared.capabilitiesFileSharingApiEnabled, exists: false) {
+ statusFileSharing.text = "✓ " + NSLocalizedString("_available_", comment: "")
+ } else {
+ statusFileSharing.text = NSLocalizedString("_not_available_", comment: "")
+ }
+
+ if NCManageDatabase.sharedInstance.getCapabilitiesServerBool(account: account, elements: NCElementsJSON.shared.capabilitiesExternalSitesExists, exists: false) {
+ statusExternalSite.text = "✓ " + NSLocalizedString("_available_", comment: "")
+ } else {
+ statusExternalSite.text = NSLocalizedString("_not_available_", comment: "")
+ }
+
+ let isE2EEEnabled = NCManageDatabase.sharedInstance.getCapabilitiesServerBool(account: account, elements: NCElementsJSON.shared.capabilitiesE2EEEnabled, exists: false)
+ //let versionE2EE = NCManageDatabase.sharedInstance.getCapabilitiesServerString(account: account, elements: NCElementsJSON.shared.capabilitiesE2EEApiVersion)
+
+ if isE2EEEnabled {
+ statusEndToEndEncryption.text = "✓ " + NSLocalizedString("_available_", comment: "")
+ } else {
+ statusEndToEndEncryption.text = NSLocalizedString("_not_available_", comment: "")
+ }
+
+ let paginationEndpoint = NCManageDatabase.sharedInstance.getCapabilitiesServerString(account: account, elements: NCElementsJSON.shared.capabilitiesPaginationEndpoint)
+ if paginationEndpoint != nil {
+ statusPaginatedFileListing.text = "✓ " + NSLocalizedString("_available_", comment: "")
+ } else {
+ statusPaginatedFileListing.text = NSLocalizedString("_not_available_", comment: "")
+ }
+
+ let activity = NCManageDatabase.sharedInstance.getCapabilitiesServerArray(account: account, elements: NCElementsJSON.shared.capabilitiesActivity)
+ if activity != nil {
+ statusActivity.text = "✓ " + NSLocalizedString("_available_", comment: "")
+ } else {
+ statusActivity.text = NSLocalizedString("_not_available_", comment: "")
+ }
+
+ let notification = NCManageDatabase.sharedInstance.getCapabilitiesServerArray(account: account, elements: NCElementsJSON.shared.capabilitiesNotification)
+ if notification != nil {
+ statusNotification.text = "✓ " + NSLocalizedString("_available_", comment: "")
+ } else {
+ statusNotification.text = NSLocalizedString("_not_available_", comment: "")
+ }
+
+ let deleteFiles = NCManageDatabase.sharedInstance.getCapabilitiesServerBool(account: account, elements: NCElementsJSON.shared.capabilitiesFilesUndelete, exists: false)
+ if deleteFiles {
+ statusDeletedFiles.text = "✓ " + NSLocalizedString("_available_", comment: "")
+ } else {
+ statusDeletedFiles.text = NSLocalizedString("_not_available_", comment: "")
+ }
+
+ var textEditor = false
+ var onlyofficeEditors = false
+ if let editors = NCManageDatabase.sharedInstance.getDirectEditingEditors(account: account) {
+ for editor in editors {
+ if editor.editor == k_editor_text {
+ textEditor = true
+ } else if editor.editor == k_editor_onlyoffice {
+ onlyofficeEditors = true
+ }
+ }
+ }
+
+ if textEditor {
+ statusText.text = "✓ " + NSLocalizedString("_available_", comment: "")
+ } else {
+ statusText.text = NSLocalizedString("_not_available_", comment: "")
+ }
+
+ let richdocumentsMimetypes = NCManageDatabase.sharedInstance.getCapabilitiesServerArray(account: account, elements: NCElementsJSON.shared.capabilitiesRichdocumentsMimetypes)
+ if richdocumentsMimetypes != nil {
+ statusCollabora.text = "✓ " + NSLocalizedString("_available_", comment: "")
+ } else {
+ statusCollabora.text = NSLocalizedString("_not_available_", comment: "")
+ }
+
+ if onlyofficeEditors {
+ statusOnlyOffice.text = "✓ " + NSLocalizedString("_available_", comment: "")
+ } else {
+ statusOnlyOffice.text = NSLocalizedString("_not_available_", comment: "")
+ }
+
+ print("end.")
+ }
+}