diff --git a/.gitignore b/.gitignore
new file mode 100644
index 00000000..cd2946ad
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,47 @@
+# Windows image file caches
+Thumbs.db
+ehthumbs.db
+
+# Folder config file
+Desktop.ini
+
+# Recycle Bin used on file shares
+$RECYCLE.BIN/
+
+# Windows Installer files
+*.cab
+*.msi
+*.msm
+*.msp
+
+# Windows shortcuts
+*.lnk
+
+# =========================
+# Operating System Files
+# =========================
+
+# OSX
+# =========================
+
+.DS_Store
+.AppleDouble
+.LSOverride
+
+# Thumbnails
+._*
+
+# Files that might appear in the root of a volume
+.DocumentRevisions-V100
+.fseventsd
+.Spotlight-V100
+.TemporaryItems
+.Trashes
+.VolumeIcon.icns
+
+# Directories potentially created on remote AFP share
+.AppleDB
+.AppleDesktop
+Network Trash Folder
+Temporary Items
+.apdisk
diff --git a/archive/community.applications-2016.10.12.txz b/archive/community.applications-2016.10.12.txz
new file mode 100644
index 00000000..01d4b6b9
Binary files /dev/null and b/archive/community.applications-2016.10.12.txz differ
diff --git a/archive/community.applications-2016.10.13.txz b/archive/community.applications-2016.10.13.txz
new file mode 100644
index 00000000..b5be0148
Binary files /dev/null and b/archive/community.applications-2016.10.13.txz differ
diff --git a/archive/community.applications-2016.10.26.txz b/archive/community.applications-2016.10.26.txz
new file mode 100644
index 00000000..cc25b204
Binary files /dev/null and b/archive/community.applications-2016.10.26.txz differ
diff --git a/archive/community.applications-2016.10.30.txz b/archive/community.applications-2016.10.30.txz
new file mode 100644
index 00000000..ead595d4
Binary files /dev/null and b/archive/community.applications-2016.10.30.txz differ
diff --git a/archive/community.applications-2016.11.05.txz b/archive/community.applications-2016.11.05.txz
new file mode 100644
index 00000000..311aafb6
Binary files /dev/null and b/archive/community.applications-2016.11.05.txz differ
diff --git a/archive/community.applications-2016.11.06.txz b/archive/community.applications-2016.11.06.txz
new file mode 100644
index 00000000..718e206d
Binary files /dev/null and b/archive/community.applications-2016.11.06.txz differ
diff --git a/archive/community.applications-2016.11.10a.txz b/archive/community.applications-2016.11.10a.txz
new file mode 100644
index 00000000..c3f41730
Binary files /dev/null and b/archive/community.applications-2016.11.10a.txz differ
diff --git a/archive/community.applications-2016.11.11a.txz b/archive/community.applications-2016.11.11a.txz
new file mode 100644
index 00000000..d8d38147
Binary files /dev/null and b/archive/community.applications-2016.11.11a.txz differ
diff --git a/archive/community.applications-2016.11.13.txz b/archive/community.applications-2016.11.13.txz
new file mode 100644
index 00000000..15ba0237
Binary files /dev/null and b/archive/community.applications-2016.11.13.txz differ
diff --git a/archive/community.applications-2016.12.03.txz b/archive/community.applications-2016.12.03.txz
new file mode 100644
index 00000000..63167e21
Binary files /dev/null and b/archive/community.applications-2016.12.03.txz differ
diff --git a/archive/community.applications-2016.12.05.txz b/archive/community.applications-2016.12.05.txz
new file mode 100644
index 00000000..f3121aad
Binary files /dev/null and b/archive/community.applications-2016.12.05.txz differ
diff --git a/archive/community.applications-2016.12.30.txz b/archive/community.applications-2016.12.30.txz
new file mode 100644
index 00000000..aefb8dde
Binary files /dev/null and b/archive/community.applications-2016.12.30.txz differ
diff --git a/archive/community.applications-2016.12.31.txz b/archive/community.applications-2016.12.31.txz
new file mode 100644
index 00000000..5031e8a4
Binary files /dev/null and b/archive/community.applications-2016.12.31.txz differ
diff --git a/archive/community.applications-2017.01.22.txz b/archive/community.applications-2017.01.22.txz
new file mode 100644
index 00000000..ab050346
Binary files /dev/null and b/archive/community.applications-2017.01.22.txz differ
diff --git a/archive/community.applications-2017.01.23.txz b/archive/community.applications-2017.01.23.txz
new file mode 100644
index 00000000..b05673cd
Binary files /dev/null and b/archive/community.applications-2017.01.23.txz differ
diff --git a/archive/community.applications-2017.01.24.txz b/archive/community.applications-2017.01.24.txz
new file mode 100644
index 00000000..338a6c4d
Binary files /dev/null and b/archive/community.applications-2017.01.24.txz differ
diff --git a/archive/community.applications-2017.01.29.txz b/archive/community.applications-2017.01.29.txz
new file mode 100644
index 00000000..5c8faa25
Binary files /dev/null and b/archive/community.applications-2017.01.29.txz differ
diff --git a/archive/community.applications-2017.02.12.txz b/archive/community.applications-2017.02.12.txz
new file mode 100644
index 00000000..bde68fec
Binary files /dev/null and b/archive/community.applications-2017.02.12.txz differ
diff --git a/archive/community.applications-2017.02.25.txz b/archive/community.applications-2017.02.25.txz
new file mode 100644
index 00000000..85df52cb
Binary files /dev/null and b/archive/community.applications-2017.02.25.txz differ
diff --git a/archive/community.applications-2017.03.18.txz b/archive/community.applications-2017.03.18.txz
new file mode 100644
index 00000000..2b603e12
Binary files /dev/null and b/archive/community.applications-2017.03.18.txz differ
diff --git a/archive/community.applications-2017.03.19a.txz b/archive/community.applications-2017.03.19a.txz
new file mode 100644
index 00000000..aeede651
Binary files /dev/null and b/archive/community.applications-2017.03.19a.txz differ
diff --git a/archive/community.applications-2017.03.21.txz b/archive/community.applications-2017.03.21.txz
new file mode 100644
index 00000000..ad9ea994
Binary files /dev/null and b/archive/community.applications-2017.03.21.txz differ
diff --git a/archive/community.applications-2017.03.22.txz b/archive/community.applications-2017.03.22.txz
new file mode 100644
index 00000000..dc375be6
Binary files /dev/null and b/archive/community.applications-2017.03.22.txz differ
diff --git a/archive/community.applications-2017.04.02a.txz b/archive/community.applications-2017.04.02a.txz
new file mode 100644
index 00000000..db6ad6f5
Binary files /dev/null and b/archive/community.applications-2017.04.02a.txz differ
diff --git a/archive/community.applications-2017.04.02b.txz b/archive/community.applications-2017.04.02b.txz
new file mode 100644
index 00000000..68cfdd5b
Binary files /dev/null and b/archive/community.applications-2017.04.02b.txz differ
diff --git a/archive/community.applications-2017.04.04.txz b/archive/community.applications-2017.04.04.txz
new file mode 100644
index 00000000..2c414455
Binary files /dev/null and b/archive/community.applications-2017.04.04.txz differ
diff --git a/archive/community.applications-2017.04.08.txz b/archive/community.applications-2017.04.08.txz
new file mode 100644
index 00000000..306578c7
Binary files /dev/null and b/archive/community.applications-2017.04.08.txz differ
diff --git a/archive/community.applications-2017.04.09.txz b/archive/community.applications-2017.04.09.txz
new file mode 100644
index 00000000..67cfad67
Binary files /dev/null and b/archive/community.applications-2017.04.09.txz differ
diff --git a/archive/community.applications-2017.04.10.txz b/archive/community.applications-2017.04.10.txz
new file mode 100644
index 00000000..b5cde92d
Binary files /dev/null and b/archive/community.applications-2017.04.10.txz differ
diff --git a/archive/community.applications-2017.04.11.txz b/archive/community.applications-2017.04.11.txz
new file mode 100644
index 00000000..6d6ca9d4
Binary files /dev/null and b/archive/community.applications-2017.04.11.txz differ
diff --git a/archive/community.applications-2017.04.13.txz b/archive/community.applications-2017.04.13.txz
new file mode 100644
index 00000000..9cdcf8f8
Binary files /dev/null and b/archive/community.applications-2017.04.13.txz differ
diff --git a/archive/community.applications-2017.04.18.txz b/archive/community.applications-2017.04.18.txz
new file mode 100644
index 00000000..451ce0ff
Binary files /dev/null and b/archive/community.applications-2017.04.18.txz differ
diff --git a/archive/community.applications-2017.04.19.txz b/archive/community.applications-2017.04.19.txz
new file mode 100644
index 00000000..bc94672c
Binary files /dev/null and b/archive/community.applications-2017.04.19.txz differ
diff --git a/archive/community.applications-2017.04.22.txz b/archive/community.applications-2017.04.22.txz
new file mode 100644
index 00000000..32b7123d
Binary files /dev/null and b/archive/community.applications-2017.04.22.txz differ
diff --git a/archive/community.applications-2017.04.22.txz_last_ver_to_support_legacy_UI b/archive/community.applications-2017.04.22.txz_last_ver_to_support_legacy_UI
new file mode 100644
index 00000000..f1cb5542
Binary files /dev/null and b/archive/community.applications-2017.04.22.txz_last_ver_to_support_legacy_UI differ
diff --git a/archive/community.applications-2017.04.23.txz b/archive/community.applications-2017.04.23.txz
new file mode 100644
index 00000000..4ba7d66d
Binary files /dev/null and b/archive/community.applications-2017.04.23.txz differ
diff --git a/archive/community.applications-2017.04.24a.txz b/archive/community.applications-2017.04.24a.txz
new file mode 100644
index 00000000..44c246ad
Binary files /dev/null and b/archive/community.applications-2017.04.24a.txz differ
diff --git a/archive/community.applications-2017.04.25.txz b/archive/community.applications-2017.04.25.txz
new file mode 100644
index 00000000..0d16aa7b
Binary files /dev/null and b/archive/community.applications-2017.04.25.txz differ
diff --git a/archive/community.applications-2017.04.29a.txz b/archive/community.applications-2017.04.29a.txz
new file mode 100644
index 00000000..5af822a2
Binary files /dev/null and b/archive/community.applications-2017.04.29a.txz differ
diff --git a/archive/community.applications-2017.04.29b.txz b/archive/community.applications-2017.04.29b.txz
new file mode 100644
index 00000000..f8f60d9a
Binary files /dev/null and b/archive/community.applications-2017.04.29b.txz differ
diff --git a/archive/community.applications-2017.04.30.txz b/archive/community.applications-2017.04.30.txz
new file mode 100644
index 00000000..0125ab20
Binary files /dev/null and b/archive/community.applications-2017.04.30.txz differ
diff --git a/archive/community.applications-2017.05.04a.txz b/archive/community.applications-2017.05.04a.txz
new file mode 100644
index 00000000..dac54f2e
Binary files /dev/null and b/archive/community.applications-2017.05.04a.txz differ
diff --git a/archive/community.applications-2017.05.07.txz b/archive/community.applications-2017.05.07.txz
new file mode 100644
index 00000000..2fecd8b8
Binary files /dev/null and b/archive/community.applications-2017.05.07.txz differ
diff --git a/archive/community.applications-2017.05.08.txz b/archive/community.applications-2017.05.08.txz
new file mode 100644
index 00000000..e7b13789
Binary files /dev/null and b/archive/community.applications-2017.05.08.txz differ
diff --git a/archive/community.applications-2017.05.14.txz b/archive/community.applications-2017.05.14.txz
new file mode 100644
index 00000000..edf0c2c7
Binary files /dev/null and b/archive/community.applications-2017.05.14.txz differ
diff --git a/archive/community.applications-2017.05.16.txz b/archive/community.applications-2017.05.16.txz
new file mode 100644
index 00000000..a9f0fccc
Binary files /dev/null and b/archive/community.applications-2017.05.16.txz differ
diff --git a/archive/community.applications-2017.05.18.txz b/archive/community.applications-2017.05.18.txz
new file mode 100644
index 00000000..fb8467f2
Binary files /dev/null and b/archive/community.applications-2017.05.18.txz differ
diff --git a/archive/community.applications-2017.05.19.txz b/archive/community.applications-2017.05.19.txz
new file mode 100644
index 00000000..c773fae7
Binary files /dev/null and b/archive/community.applications-2017.05.19.txz differ
diff --git a/archive/community.applications-2017.05.20.txz b/archive/community.applications-2017.05.20.txz
new file mode 100644
index 00000000..04ec28e5
Binary files /dev/null and b/archive/community.applications-2017.05.20.txz differ
diff --git a/archive/community.applications-2017.05.20a.txz b/archive/community.applications-2017.05.20a.txz
new file mode 100644
index 00000000..11d19f6e
Binary files /dev/null and b/archive/community.applications-2017.05.20a.txz differ
diff --git a/archive/community.applications-2017.05.21.txz b/archive/community.applications-2017.05.21.txz
new file mode 100644
index 00000000..43805d60
Binary files /dev/null and b/archive/community.applications-2017.05.21.txz differ
diff --git a/archive/community.applications-2017.05.22.txz b/archive/community.applications-2017.05.22.txz
new file mode 100644
index 00000000..99897b81
Binary files /dev/null and b/archive/community.applications-2017.05.22.txz differ
diff --git a/archive/community.applications-2017.05.23.txz b/archive/community.applications-2017.05.23.txz
new file mode 100644
index 00000000..4453ddf4
Binary files /dev/null and b/archive/community.applications-2017.05.23.txz differ
diff --git a/archive/community.applications-2017.05.24.txz b/archive/community.applications-2017.05.24.txz
new file mode 100644
index 00000000..1c949b01
Binary files /dev/null and b/archive/community.applications-2017.05.24.txz differ
diff --git a/archive/community.applications-2017.05.25.txz b/archive/community.applications-2017.05.25.txz
new file mode 100644
index 00000000..1311176f
Binary files /dev/null and b/archive/community.applications-2017.05.25.txz differ
diff --git a/archive/community.applications-2017.05.26.txz b/archive/community.applications-2017.05.26.txz
new file mode 100644
index 00000000..39a47475
Binary files /dev/null and b/archive/community.applications-2017.05.26.txz differ
diff --git a/archive/community.applications-2017.05.27.txz b/archive/community.applications-2017.05.27.txz
new file mode 100644
index 00000000..f299b1a2
Binary files /dev/null and b/archive/community.applications-2017.05.27.txz differ
diff --git a/archive/community.applications-2017.05.29.txz b/archive/community.applications-2017.05.29.txz
new file mode 100644
index 00000000..79c5c457
Binary files /dev/null and b/archive/community.applications-2017.05.29.txz differ
diff --git a/archive/community.applications-2017.05.30.txz b/archive/community.applications-2017.05.30.txz
new file mode 100644
index 00000000..e584d9f9
Binary files /dev/null and b/archive/community.applications-2017.05.30.txz differ
diff --git a/archive/community.applications-2017.06.05.txz b/archive/community.applications-2017.06.05.txz
new file mode 100644
index 00000000..9addaa02
Binary files /dev/null and b/archive/community.applications-2017.06.05.txz differ
diff --git a/archive/community.applications-2017.06.08.txz b/archive/community.applications-2017.06.08.txz
new file mode 100644
index 00000000..ee1f609b
Binary files /dev/null and b/archive/community.applications-2017.06.08.txz differ
diff --git a/archive/community.applications-2017.06.10.txz b/archive/community.applications-2017.06.10.txz
new file mode 100644
index 00000000..574164ef
Binary files /dev/null and b/archive/community.applications-2017.06.10.txz differ
diff --git a/archive/community.applications-2017.06.15.txz b/archive/community.applications-2017.06.15.txz
new file mode 100644
index 00000000..32c3809c
Binary files /dev/null and b/archive/community.applications-2017.06.15.txz differ
diff --git a/archive/community.applications-2017.06.16.txz b/archive/community.applications-2017.06.16.txz
new file mode 100644
index 00000000..085f814e
Binary files /dev/null and b/archive/community.applications-2017.06.16.txz differ
diff --git a/archive/community.applications-2017.06.18a.txz b/archive/community.applications-2017.06.18a.txz
new file mode 100644
index 00000000..95a686a8
Binary files /dev/null and b/archive/community.applications-2017.06.18a.txz differ
diff --git a/archive/community.applications-2017.06.21.txz b/archive/community.applications-2017.06.21.txz
new file mode 100644
index 00000000..79c9a81d
Binary files /dev/null and b/archive/community.applications-2017.06.21.txz differ
diff --git a/archive/community.applications-2017.06.25.txz b/archive/community.applications-2017.06.25.txz
new file mode 100644
index 00000000..88639d0c
Binary files /dev/null and b/archive/community.applications-2017.06.25.txz differ
diff --git a/archive/community.applications-2017.06.30.txz b/archive/community.applications-2017.06.30.txz
new file mode 100644
index 00000000..3d827650
Binary files /dev/null and b/archive/community.applications-2017.06.30.txz differ
diff --git a/archive/community.applications-2017.07.01.txz b/archive/community.applications-2017.07.01.txz
new file mode 100644
index 00000000..13653ad6
Binary files /dev/null and b/archive/community.applications-2017.07.01.txz differ
diff --git a/archive/community.applications-2017.07.01a.txz b/archive/community.applications-2017.07.01a.txz
new file mode 100644
index 00000000..aa6c79bb
Binary files /dev/null and b/archive/community.applications-2017.07.01a.txz differ
diff --git a/archive/community.applications-2017.07.02.txz b/archive/community.applications-2017.07.02.txz
new file mode 100644
index 00000000..c97a2d09
Binary files /dev/null and b/archive/community.applications-2017.07.02.txz differ
diff --git a/archive/community.applications-2017.07.02a.txz b/archive/community.applications-2017.07.02a.txz
new file mode 100644
index 00000000..0c90460f
Binary files /dev/null and b/archive/community.applications-2017.07.02a.txz differ
diff --git a/archive/community.applications-2017.07.08.txz b/archive/community.applications-2017.07.08.txz
new file mode 100644
index 00000000..2fd5c61b
Binary files /dev/null and b/archive/community.applications-2017.07.08.txz differ
diff --git a/archive/community.applications-2017.07.12.txz b/archive/community.applications-2017.07.12.txz
new file mode 100644
index 00000000..b18c39b9
Binary files /dev/null and b/archive/community.applications-2017.07.12.txz differ
diff --git a/archive/community.applications-2017.07.13.txz b/archive/community.applications-2017.07.13.txz
new file mode 100644
index 00000000..776319b9
Binary files /dev/null and b/archive/community.applications-2017.07.13.txz differ
diff --git a/archive/community.applications-2017.07.14.txz b/archive/community.applications-2017.07.14.txz
new file mode 100644
index 00000000..b0c58c96
Binary files /dev/null and b/archive/community.applications-2017.07.14.txz differ
diff --git a/archive/community.applications-2017.07.15.txz b/archive/community.applications-2017.07.15.txz
new file mode 100644
index 00000000..e05160e2
Binary files /dev/null and b/archive/community.applications-2017.07.15.txz differ
diff --git a/archive/community.applications-2017.07.16.txz b/archive/community.applications-2017.07.16.txz
new file mode 100644
index 00000000..4e1443cf
Binary files /dev/null and b/archive/community.applications-2017.07.16.txz differ
diff --git a/archive/community.applications-2017.07.19.txz b/archive/community.applications-2017.07.19.txz
new file mode 100644
index 00000000..a1fa721e
Binary files /dev/null and b/archive/community.applications-2017.07.19.txz differ
diff --git a/archive/community.applications-2017.07.20a.txz b/archive/community.applications-2017.07.20a.txz
new file mode 100644
index 00000000..ca1b4680
Binary files /dev/null and b/archive/community.applications-2017.07.20a.txz differ
diff --git a/archive/community.applications-2017.07.22.txz b/archive/community.applications-2017.07.22.txz
new file mode 100644
index 00000000..c604da01
Binary files /dev/null and b/archive/community.applications-2017.07.22.txz differ
diff --git a/archive/community.applications-2017.07.23.txz b/archive/community.applications-2017.07.23.txz
new file mode 100644
index 00000000..5822ab55
Binary files /dev/null and b/archive/community.applications-2017.07.23.txz differ
diff --git a/archive/community.applications-2017.07.24.txz b/archive/community.applications-2017.07.24.txz
new file mode 100644
index 00000000..723ab2ba
Binary files /dev/null and b/archive/community.applications-2017.07.24.txz differ
diff --git a/archive/community.applications-2017.07.31.txz b/archive/community.applications-2017.07.31.txz
new file mode 100644
index 00000000..895a7c8b
Binary files /dev/null and b/archive/community.applications-2017.07.31.txz differ
diff --git a/community.applications-2017.07.13.txz b/community.applications-2017.07.13.txz
new file mode 100644
index 00000000..776319b9
Binary files /dev/null and b/community.applications-2017.07.13.txz differ
diff --git a/copy_to_git.sh b/copy_to_git.sh
new file mode 100644
index 00000000..fe1c8439
--- /dev/null
+++ b/copy_to_git.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+mkdir -p "/tmp/GitHub/community.applications/source/community.applications/usr/local/emhttp/plugins/community.applications/"
+
+cp /usr/local/emhttp/plugins/community.applications/* /tmp/GitHub/community.applications/source/community.applications/usr/local/emhttp/plugins/community.applications -R -v -p
+
+
diff --git a/pkg_build.sh b/pkg_build.sh
new file mode 100644
index 00000000..f7359cd7
--- /dev/null
+++ b/pkg_build.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+cd source/community.applications
+pkg_build.sh
+
diff --git a/plugins/community.applications.plg b/plugins/community.applications.plg
new file mode 100644
index 00000000..ef23ce3b
--- /dev/null
+++ b/plugins/community.applications.plg
@@ -0,0 +1,819 @@
+
+
+
+
+
+
+
+
+
+]>
+
+
+
+
+###2017.07.31
+- Update URL for application feed
+
+###2017.07.24
+- Better enforcement of fatal errors in application templates
+- Code cleanup
+- Fixed: Edge case of being able to search dockerhub if docker is not enabled
+- Fixed: Edge case of app of the day no longer valid app after an update
+
+###2017.07.20
+- Multiple Installation of Previous Apps
+ - Fixed: Clicking outside of the install button would attempt to install
+ - Fixed: Selected Apps would not stay selected following a view or page change
+ - Added: Ability to select apps from different pages and have them all install
+
+###2017.07.16
+- Enhanced: Search box has focus when page loaded (Just start typing instead of clicking within)
+- Enhanced: After installing / editing a docker application, pressing DONE will return to the Apps page (previously blank template would appear)
+- Added: Ability to install multiple applications (docker / plugin) simultaneously from the Previous Apps section without confirming the already filled out template.
+- Changed: Default for Displayed results per page from 10 to 25
+- Removed: Option to open install / edit pages in a new tab
+
+###2017.07.08
+- Minor changes to appfeed statistics displays
+
+###2017.07.02
+- Don't revert to legacy mode automatically if appfeed fails (probably due to DNS failure. Previously could take an hour to time out in this circumstance. New method will time out in 2-3 minutes)
+- Fixed: Under certain circumstances with docker service disabled, app pop ups could display errors
+
+###2017.07.01a
+- Fix regression error when updating CA from within CA would not reload the page after installation finished
+
+###2017.07.01
+- Added in sort by date when in New Apps section
+- Fixed Categories not resetting after a search performed
+
+###2017.06.25
+- Remove sort by date and do not display except on plugins (rarely do docker maintainers update it which makes for a lot of confusion)
+- Fixed: Under certain circumstances, app info popups in previous apps would display the incorrect information
+- Add a comment if an app is deprecated
+- Fixed: Prevent apps not in appfeed from displaying a pop up
+- Remove some excess code and files
+- Fix CSS on statistics displays
+
+###2017.06.18
+- Expanded details on statistics
+- Removed resource monitor (see thread for details)
+
+###2017.06.10
+- Adjustable Disappear time on app popups
+
+###2017.06.05
+- Fixed: Regression error in Resource Monitor if no applications running
+
+###2017.05.30
+- Fixed: Display Aberration in Table Mode under certain conditions
+- Enhanced: View Mode and Results per Page saved between instances
+- Enhanced: Increased compatibility with older browsers
+- Added: Statistics Display for appfeed
+- Code cleanup
+
+###2017.05.21
+- Enhanced: Update plugins now refreshes page instead of reloading
+- Enhanced: Install plugins now refreshes page instead of reloading
+- Enhanced: Increase search speed on installed apps
+- Added: Paging when utilizing favourite repositories
+- Code cleanup
+
+###2017.05.19
+- Fixed: Display anomalies introduced by unRaid 6.3.4
+- Fixed: Minor issues with category / subcategory buttons
+
+###2017.05.16
+- Fixed: Under certain circumstances the popup would disappear immediately when moving the mouse
+- Added: More fixes for common template author's mistakes
+- Minor skin changes in Icon Details mode
+
+###2017.05.08
+- Enhanced: Speed up generation of displays
+- Enhanced: Properly handle edge cases of multiple browser tabs open and stale CA sessions displaying popups
+- Added / Restored: Ability to install / edit from Icon mode without hitting popup.
+
+###2017.05.07
+- Fixed: Regression error on apppop up for previous apps
+
+###2017.05.04
+- Add Install / Edit / WebUI icons to icon details mode
+
+###2017.04.30
+- Added: Ability to jump directly to an author / maintainer's profile (to help with selecting whether to install or not)
+
+###2017.04.29a
+- Added: Adjustable setting for "hover time" before a popup appears
+
+###2017.04.29
+- Fix Compatibility with Internet Explorer and Opera
+- Fix Button incorrectly displaying on an installed application utilizing Branches
+- Fix Changelog not displaying for CA when update is available
+
+###2017.04.24a
+- Don't display webUI link if docker app is not running
+
+###2017.04.24
+- Remove legacy UI
+- Revamp GUI
+- All installs / edits / etc handled via hovering over (or clicking on the icon for the app)
+- Fixed: Minor issues with paging
+
+###2017.04.09###
+- Introduce new UI to remove less commonly used buttons from screen.
+
+###2017.04.04###
+- Fix 6.2.x compatibility
+
+###2017.04.02###
+- Implement new features made available by 6.3.3+ (Still fully compatible with older versions of unRaid)
+ - Hovering over app's icon opens up the full description
+ - Hovering over changes icon opens up the change log
+ - Use tooltipster exclusively (tooltips will open after 1.5 seconds, and automaticaly close after 15 seconds)
+
+###2017.03.22###
+- Misc Display Fixes
+
+###2017.03.21###
+- Maintenance update: Prevent Deprecated apps from appearing on available apps lists
+
+###2017.03.19a###
+- Ability to switch max per page on the fly
+- Unify docker search navigation with appstore navigation
+
+###2017.03.19###
+- Misc improvements to paging
+
+###2017.03.18###
+- Added limit results to "x" per page
+
+###2017.02.25###
+- Update links within plugin screens
+
+###2017.02.12###
+- Maintenance update. Add more fixes for template errors from authors
+
+###2017.01.29###
+- Added: Automatic Blacklisting if a template poses a security risk
+
+###2017.01.24###
+- Security fix on full description popups
+- Fixed: Show stats on full description popups if app name has been changed
+
+###2016.12.31###
+- Fix permission issues resulting from a migration of development machines
+
+###2016.12.30###
+- Suppress invalid cron job email
+
+###2016.12.05###
+- Fixed: Stopping array would hang until any calculations of appdata size was completed if CA Backup was not installed
+
+###2016.12.03###
+- Fix pop up descriptions in Previous Apps
+- Don't process blacklisted apps
+
+###2016.11.13###
+- Fixed: CA Modules displaying incompatible add-ons
+
+###2016.11.11###
+- Allow separate installs / removal of included modules
+
+###2016.11.05###
+- Infrastructure changes to ultimately allow separate module installation / deinstallation
+
+###2016.10.30###
+- Fixed: Dynamix Bleeding Edge 2016.10.29c compatibility
+
+###2016.10.26###
+- Allow appdata backup source to be any folder on system
+- Updated routines to handle potential incompatibility with PHP and unRaid's generated comments
+
+###2016.10.12###
+- Handle edge case template creation by dockerMan
+
+###2016.09.28###
+- Force redirection of additional backup scripts output console
+
+###2016.09.25a###
+- Speed up appfeed download
+
+###2016.09.25###
+- Added: Selectable delay in days before autoupdating a plugin
+- Added: Backup of old .plg files prior to backup to support edge-case rollbacks if needed
+- Updated: Manual
+
+###2016.09.23###
+- NOTE: All auto update settings will be reset back to defaults with this update. IE: Only CA and FCP will autoupdate
+- Fixed: CA under certain circumstances would show as not autoupdating in settings when in fact it would
+- Fixed: Under very specific circumstances, some plugins set to not autoupdate could in fact auto update
+- Fixed: PhAzE plugins would not show up as installed if they were
+
+###2016.09.21###
+- Extra security tests on auto updates
+- Implement autoupdate kill switch
+
+###2016.09.17###
+- Compatibility fix for dynamix.bleeding.edge.plg
+
+###2016.09.15###
+- Fixed minor compatibilty issues with 6.2 Final
+- Changed: Only log maximum 10 rsync errors in backup module
+- Fixed: disallow faster rsync option if days to keep backup sets is disabled (or set to 0)
+- Fixed: backup to flashdrive setting (entry could have been possibly corrupted under 2016.09.03)
+- Added: Script to delete old dated backups in addition to ALL backups and error backups only
+- Changed: Update Apps now called Legacy Mode. Selecting again goes back to appFeed mode
+- Removed: Private Repositories via a GitHub repo.
+- Added: Selectable notifications on autoupdates of plugins
+- Added: XML Branch support while in Legacy Mode
+- Fixed: Display aberrations while in legacy mode if some repositories didn't download
+- Added: Legacy mode will now display any XML's which failed to parse
+
+###2016.09.07###
+- Fixed VM XML's not backing up under certain circumstances
+- Do not delete XML backups if source is no longer available
+- Added Dynamic adjustment of templates based upon user input
+
+###2016.09.06###
+- Fixed Backup/Restore settings module not working
+- Added Selectable display for Random App Of Day
+
+###2016.09.04###
+- Under certain cirumstances, app of the day could crash CA
+- Download compressed version of appfeed
+
+###2016.09.03###
+- Added in VM XML backups
+- Major rewrite of display engine (faster, far smaller)
+- Fix app of day to not possibly display moderated apps if app feed happened to change during the day
+- Fix various buttons not properly getting disabled when forcing update under certain circumstances
+- Fixed search on author where apps would always display as being installed
+- Far too many coding changes to list
+
+###2016.08.13###
+- Maintenance Update
+- Added Apps of the day
+- Fixed display abnormalities in Table Mode under certain conditions / templates
+- Fixed displayed borders on popups
+- Updated manual
+- Removed extraneous code
+- Fixed base image display when in legacy mode
+
+###2016.08.07###
+- Added in ability to flag / pin apps for later viewing
+
+###2016.08.03###
+- Fixed: Restore appdata when using user shares as a destination
+
+###2016.07.31###
+- Support user shares as source and destination for appdata backup on 6.2-rc3+
+
+###2016.07.23###
+- Major revamp to backup/restore appdata module (see thread for details)
+
+###2016.07.16###
+- Better logging for CA Backup
+
+###2016.07.08###
+- Bug fix on dockerHub searches vs recommended applications
+
+###2016.07.04###
+- Fixed cleanup appdata if an installed app doesn't have any volume mappings
+
+###2016.07.01###
+- Support Separate Destinations for Flash Drive Backup
+
+###2016.06.29###
+- Backup Disk Assignments and super.dat (renamed) as part of USB backup
+
+###2016.06.26###
+- Backup options not displaying the set value for save log to flash
+- Fix improper displaying of source and destination on popup (restore)
+- Suppress errors displayed when selecting a UD mount for backup purposes
+- Added in backup of flash drive (sans super.dat) to docker appdata prior to backing up to array
+
+###2016.06.25k###
+- Add directions for backups for UD mounted shares
+
+###2016.06.13###
+- Fix typos
+- Prevent appdata cleanup from deleting parent folders (due to severely misconfigured previous template)
+- Add support and project links back to table mode (not sure how / when they got removed)
+
+###2016.06.12###
+- Miscellaneous enhancements and fixes
+
+###2016.06.11###
+- Added: New module to delete orphaned appdata folders
+- Better appdata determination if running unRaid 6.2+
+
+###2016.06.05###
+- Fixed: Prevent invalid Support and Project URLs from displaying
+
+###2016.06.02###
+- Add in option to speed up backups when using dated backups with automatic deletions
+
+###2016.05.30###
+- Add in automatic deletion of old dated backup sets
+
+###2016.05.12###
+- Add in dated backup of appdata
+
+###2016.05.08###
+- Fixed some bugs with AutoUpdate displays
+
+###2016.05.05###
+- Enhanced: Backup - better logging into syslog
+- Added: Configurable logging options
+- Fixed: Suppress errors if plugins don't have a readme
+
+###2016.05.01###
+- Added Configurable notifications on apppdata backup
+- Added Exluded folders to appdata backup
+- Updated: CA manual
+- Added rsync errors now logged
+- Lowered memory footprint of program
+
+###2016.04.30###
+- Better warnings on overwrites
+- Added ability to set backup destinations to a subfolder
+- Enhanced script selection / share selection
+- Added ability to skip docker.img file on backups
+- Fix autoupdate of applications would not always only display installed plugins
+
+###2016.04.28###
+- Added: Support for manual / scheduled backups of appData
+
+###2016.04.17###
+- Added: Ability to Auto Update Selected Plugins
+
+###2016.04.16###
+- Fix: PHP exception when only a single Config entry is present
+- Fix: Date application updated when in Legacy mode
+
+###2016.04.10###
+- Enhanced: Further security improvements
+- Enhanced: cAdvisor template is now 6.2 compliant
+- Fix: Suppress error if no docker applications running when in resource monitor
+- Added: Ability to install updates for docker applications
+- Enhanced: Better determination of appFeed failure
+- Added: Confirmation on Update Applications button
+- Updated: Manual, Credits
+
+###2016.04.01###
+- Fix: Under certain circumstances, data structures could get corrupted
+- Enhanced: Further security enhancements
+
+###2016.03.31###
+- Security Fix: Prevent arbitrary execution of code from malicious templates
+- Fix: Sanitize all Overview out of specification
+- Fix: Resource monitor not recognizing cAdvisor installed if name changed
+- Fix: Renamed apps will not display usage stats in popup
+- Added: option to show change log for CA when updating itself
+- Changed: default Host port for cAdvisor to 9243 (something oddball that probably won't conflict with anything else)
+- Added: if cAdvisor installed, but not running, abilty to start it within CA
+- Updated: Manual
+
+###2016.03.28###
+- Coding optimizations
+- Fixed: Don't display a support link if no support link available
+- Fixed: Add web-page link if repository authors have a web page
+- Added: Ability to install updates for plugins
+- Fixed: Resource Monitor not displaying icons for customized appFeed apps
+- Fixed: Determination of appdata is now case-insensitive when looking for /config
+- Fixed: dockerHub conversions now follow settings for new tab or same tab
+- Changed: Default value for new tab or same tab is now same tab
+
+###2016.03.26###
+- Fixed: Customized apps (based upon a default one in appfeed) were being tagged as incompatible
+- Enhanced: Friendly reminder if CA is out of date
+
+###2016.03.24###
+- Fixed: Installing previous apps on unRaid 6.2
+- Enhanced: Now fully generates v6.2 compliant xml files for dockerMan
+
+###2016.03.20###
+- Fixed: readmore on searches (regression error)
+- Fixed: private repositories (dockerHub searches) were being saved into wrong folder (regression error)
+- Enhanced: Update Applications (or reversion to legacy mode) will not fail if a single repository fails to download
+- Enhanced: Now include cAdvisor XML template so as to not rely upon smdion's repository
+- Enhanced: Popup descriptions now include links to go to cAdvisor's page for running docker applications
+- Enhanced: Templates passed through to dockerMan are now Moderated to allow CA to fix any errors, typos, etc in the author's template
+- Enhanced: Major overhaul of the XML template generation
+- Enhanced: Continuing code cleanup
+
+###2016.03.13###
+- Properly regress to legacy mode in case of improperly formed appFeed
+- Overhaul of the javascript
+
+###2016.03.12###
+- Remove option to relocate Users menu (and relocate Apps Tab) Use webUI's display settings instead
+- Remove option to set appdata share. CA now always prompts to delete appdata if it sees a /config container path
+- Resource Monitor supports appdata's stored anywhere on your system (and within multiple folders)
+- Fixed: Minor display aberration introduced by unRaid 6.2 beta 18
+- Fixed: If a calculation of appdata size was in progress you could not stop the array
+
+###2016.03.10###
+- Further enhanced Resource Monitor
+
+###2016.03.06###
+- Fixed: Private Repositories now updated every session
+- Added: Resource Monitor for Docker Applications
+
+###2016.03.04###
+- Added: Running docker applications will now dynamically display CPU and memory utilization statistics
+- Various other fixes / enhancements
+
+###2016.02.20###
+- Fixed: Under certain circumstances, the domain URL listed in a plugin might not be what the author actually specified (eg: raw.github.com vs raw.githubusercontent.com) causing some plugins to not display in the previously installed section
+
+###2016.02.19###
+- Hot fix for special characters contained within templates
+
+###2016.02.18###
+- Added: Support Licence (and its mispelling of License) in templates
+- Fixed: Under certain circumstances, Reinstall button could show up instead of Install
+
+###2016.02.14###
+- Code Cleanup
+- Don't display dockerHub stars if not starred
+- Hide search dockerHub if in previous / installed apps
+- Fix error in settings if temp directory didn't exist
+
+###2016.02.10###
+- Suppress stars.sh error message
+
+###2016.02.08###
+- Fixed: Issue with going from dockerHub searches to installed / previously installed
+- Fixed: Disallow dockerHub searches if docker not enabled
+- Fixed: Disallow adding a previously installed docker app if docker not enabled
+- Removed: Legacy Code
+- Removed: dockerHub guess at Icons (api broken)
+- Fixed: Suppress an error message due to a bad template
+- Fixed: Remove some extra temp files once not needed anymore
+
+###2016.02.06###
+- Fixed: display abnormality with Firefox
+- Enhanced: More intelligent determination of d/l counts
+- Enhanced: Rearrange display icons
+- Enhanced: Table Mode
+- Added: Ability to display installed apps within available lists
+
+###2016.02.04###
+- Fix issue with duplicate plugin names
+
+###2016.02.03###
+- Suppress docker error messages if docker not running
+- Full information on an app now displays total downloads
+- Add sort by downloads
+
+###2016.02.01###
+- Going forward, unRaid version 6.1+ compatible only
+- Fixed: Applications with 2 identical names could disappear from the lists
+- Added: Uninstall any application within CA
+- Added: Optional deleting of an application's appdata - see manual for details
+- Added: Favourite Repositories
+- Fixed: Moderator Comments Now only download once per session
+- Removed: Local server caching of icons (made no sense to me)
+
+###2016.01.30###
+- Added: Separate Installed Apps from categories
+- Added: Separate Installed Apps from previously installed
+- Added: Incorporate Plugins to installed / previously installed
+- Updated: Manual
+
+###2016.01.28###
+- Added: Ability to manage previously installed docker apps (my* templates)
+
+###2016.01.24###
+- Fix: Under certain circumstances, blank templates would appear
+
+###2016.01.16###
+- Fix: Under certain circumstances, updated moderator comments were not being downloaded
+- Fix: Under certain circumstances, errors would appear on the popup descriptions
+
+###2016.01.13###
+- Fix: Suppress extraneous message on local console during installation
+
+###2016.01.10b###
+- Change: Appfeed now only downloaded if it has changed
+
+###2016.01.10###
+- Add: Option to not redownload appfeed if reloading apps within a certain time period
+- Fix: Alternate icon wasn't displaying properly if template's icon was unavailable
+- Updated: Help / Manual
+
+###2016.01.02###
+- Fix: Prevent malformed templates from displaying
+- Fix: All private containers were being tagged as being incompatible
+- Change AppStore to Apps
+
+###2015.12.18###
+- Add support for enforcement of application OS requirements (see help thread)
+
+###2015.12.12a###
+- Selectable add/edit/settings windows in new tab or not
+
+###2015.12.12###
+- Fix: Minor Icon Issues
+- Fix: Plugin changelogs now same format as within a .plg file
+- Fix: Not all plugins would properly go to the settings page
+- Fix: Plugins not sorting by Author name
+- Update: Help / Manual
+
+###2015.12.08###
+- Minor Bug Fixes
+- Settings Button for already install plugins will take you to the plugin settings
+
+###2015.12.06a###
+- Disable Update Applications button if an update is in progress NOTE: There is normally zero reason to hit this button anyways
+- Fix: Allow user selectable positioning of the AppStore. (Either on the main menu, within settings, or on main menu and move Users to settings)
+
+###2015.12.06###
+THIS IS A REQUIRED UPDATE
+
+- Relocate plugin from docker tab to its own tab (AppStore)
+- Now able to display and install available plugins
+- Docker no longer required to be enabled to browse applications
+
+###2015.12.05###
+- Fixed: System wouldn't let you add any application if a private repository was present
+
+###2015.10.10###
+- Suppress commands executed with /bin/sh appearing on local monitor
+
+###2015.09.29###
+- Fixed memory leak with application feed
+
+###2015.09.20###
+- Add in super categories for beta and private (selectable from settings)
+- More tweaks to docker conversion engine
+- Sanitize the input on searches
+ relocate temporary files to ram
+- various other fixes and tweaks
+
+###2015.09.15###
+- Remove code for unimplemented features
+- Disallow installing dockerHub result if a recommended application uses the same repository
+- Fix: *.xml not found was appearing on local terminal if no private repositories were found
+
+###2015.09.12###
+- Complete rewrite of dockerHub conversion code, adding more exceptions
+- Fix: Clearing search terms no longer displays all containers
+- Added in support for moderator comments on a container
+- Added in ability to blacklist specific containers
+
+###2015.09.01###
+- Implement change required due to dockerHub changing website again (used in dockerHub search mode)
+- Add suggested searches for dockerHub
+- Numerous under the hood improvements
+
+###2015.08.24###
+- Handle new restrictions introduced in RC6
+
+###2015.08.23###
+- Suppress some spurious status messages on unRaid's attached monitor
+- Expanded manual
+- Display dockerHub star ratings for ALL templates
+
+###2015.08.20###
+- Better search results for icons on dockerHub
+- Search for other containers from author (template mode)
+- Resolved issue with spaces in search parameters
+- Internal reorganization
+
+###2015.08.15###
+- Added in BaseOS display when not in appFeed mode
+- Added in Full GUI for searching and converting non-unRaid containers. (See support thread for details)
+- Miscellaneous fixes
+
+###2015.08.12###
+- Hot Fix for 6.1RC-3
+
+###2015.08.09###
+- Hot fix for templates with duplicate tags
+- Pop up free in appfeed mode
+
+###2015.08.02###
+- Handle blank descriptions, categories, overviews in appFeed mode
+- Fix not able to show changelog on application names containing spaces
+- Integrate searching (and converting) from dockerHub
+
+###2015.07.26a###
+- Hot fix for 6.1 RC-2
+
+###2015.07.25c###
+- Fixed Internet Explorer crashing
+- Added Icon Details view mode
+
+###2015.07.23###
+- Unified UI between icon and table mode
+- Switch between icon and table mode on the fly
+- Faster sorting in icon mode
+- Add sort by date updated
+
+###Note: you must allow your browser to display popups from your server when in appFeed mode###
+
+###2015.07.20###
+- Code unified between tables and icons
+- Added pop up descriptions to table mode, hover descriptions to icon mode
+- Fix intermittent bug where a blank template could appear
+
+###2015.07.19###
+- 6.1rc-1 Broke Community Applications - Fixed
+
+###2015.07.18###
+- Coding Improvements
+- Revamp Icon Mode Descriptions
+- Add support for Project Home Page links
+
+###2015.07.16###
+- Significantly reduce memory footprint
+- Allow private repositories to be used in conjunction with application feed
+- Force Update in application feed mode will temporarily revert to template mode
+- Failure to download application feed will revert system to template mode
+
+###2015.07.15###
+- Added option to automatically update the application list when entering Docker tab
+- Added in support for Kode's real-time application feed update
+- Remove background table lines in icon mode
+- Removed option to automatically fill out template paths
+
+###2015.07.08###
+- Clicking the repository will now open the announcement thread in a new tab
+
+###2015.07.04###
+- Added in option to display small icons in icon mode
+- Optionally overwrite ALL host paths when in experimental overwrite host path mode
+
+###2015.07.02###
+- Fixed display abberation in table mode when searching for application with change log
+###2015.07.01###
+- Added an experimental option to automatically fill in host paths. See support thread for details.
+
+###2015.06.21###
+- Table Mode: Repository was not displaying (introduced in 2015.06.14) (my bad - never noticed)
+
+###2015.06.18###
+- Changed to a more intuitive Apply / Done buttons in settings
+
+###2016.06.17###
+- Fixed table header sometimes displaying in Icon Mode
+- Made settings default values consistent between modules
+- Added help text for Icon Mode
+- Icon mode now default
+
+###2015.06.15###
+- Expanded descriptions in Icon mode
+- Fixed applications in beta repositories not being flagged correctly
+
+###2015.06.14a###
+- Fixed cursor over information icon and application icon (Icon mode)
+- Fixed applications not displaying description if a space was in the name (Icon mode)
+
+###2015.06.14###
+- Added Icon view mode (more mobile friendly!)
+
+###2015.06.11###
+- Coding optimizations
+- Add help text
+
+###2015.06.08###
+- Added support for new / updated containers
+- Expanded settings section
+
+###2015.06.06###
+- Added a settings section
+
+###2015.06.03a###
+- Optional local caching of application icons
+
+###2015.06.03###
+- Initial display is now blank (faster)
+- Going from subcategory to all categories no longer displays all categories
+
+###2015.06.02###
+- Added support for Changes tag
+- Added non-intrusive reminder to update applications after 14 days
+
+###2015.05.31###
+- Renamed DNS Servers to be DNS Client / Servers
+
+###2015.05.30###
+- Miscellaneous download fixes
+
+###2015.05.28###
+- Initial Release
+
+
+
+
+
+
+]]>
+
+
+
+
+
+# Remove old 'source' files
+rm -f $(ls /boot/config/plugins/&name;/&name;*.txz 2>/dev/null|grep -v '&version;')
+if [[ -d /boot/config/plugins/repo.update ]]; then rm -rf /boot/config/plugins/repo.update; fi
+if [[ -d /usr/local/emhttp/plugins/repo.update ]]; then rm -rf /usr/local/emhttp/plugins/repo.update; fi
+if [[ -n $(ls /boot/config/plugins/repo.update*.plg 2>/dev/null) ]]; then rm /boot/config/plugins/repo.update*.plg; fi
+
+if [[ -e /tmp/community.applications/tempFiles/templates.json ]]; then rm /tmp/community.applications/tempFiles/templates.json; fi
+
+
+
+
+
+https://raw.github.com/&github;/master/archive/&name;-&version;.txz
+&md5;
+
+
+
+
+
+echo "Creating Directories"
+mkdir -p /var/lib/docker/unraid/templates-community-apps
+mkdir -p /var/lib/docker/unraid/community.applications.datastore
+mkdir -p /tmp/community.applications/tempFiles
+mkdir -p /boot/config/plugins/community.applications
+
+echo ""
+echo "----------------------------------------------------"
+echo " &name; has been installed."
+echo " Copyright 2015-2017, Andrew Zawadzki"
+echo " Version: &version;"
+echo "----------------------------------------------------"
+echo ""
+
+
+
+
+
+]]>
+
+
+
+
+
+removepkg &name;-&version;
+rm -rf &plugdir;
+rm -rf /boot/config/plugins/&name;
+rm -rf /var/lib/docker/unraid/templates-community
+
+
+
diff --git a/plugins/community.applications.plg.save b/plugins/community.applications.plg.save
new file mode 100644
index 00000000..ec8f097a
--- /dev/null
+++ b/plugins/community.applications.plg.save
@@ -0,0 +1,645 @@
+
+
+
+
+
+
+
+
+
+]>
+
+
+
+
+###2016.11.05###
+- Infrastructure changes to ultimately allow separate module installation / deinstallation
+
+###2016.10.30###
+- Fixed: Dynamix Bleeding Edge 2016.10.29c compatibility
+
+###2016.10.26###
+- Allow appdata backup source to be any folder on system
+- Updated routines to handle potential incompatibility with PHP and unRaid's generated comments
+
+###2016.10.12###
+- Handle edge case template creation by dockerMan
+
+###2016.09.28###
+- Force redirection of additional backup scripts output console
+
+###2016.09.25a###
+- Speed up appfeed download
+
+###2016.09.25###
+- Added: Selectable delay in days before autoupdating a plugin
+- Added: Backup of old .plg files prior to backup to support edge-case rollbacks if needed
+- Updated: Manual
+
+###2016.09.23###
+- NOTE: All auto update settings will be reset back to defaults with this update. IE: Only CA and FCP will autoupdate
+- Fixed: CA under certain circumstances would show as not autoupdating in settings when in fact it would
+- Fixed: Under very specific circumstances, some plugins set to not autoupdate could in fact auto update
+- Fixed: PhAzE plugins would not show up as installed if they were
+
+###2016.09.21###
+- Extra security tests on auto updates
+- Implement autoupdate kill switch
+
+###2016.09.17###
+- Compatibility fix for dynamix.bleeding.edge.plg
+
+###2016.09.15###
+- Fixed minor compatibilty issues with 6.2 Final
+- Changed: Only log maximum 10 rsync errors in backup module
+- Fixed: disallow faster rsync option if days to keep backup sets is disabled (or set to 0)
+- Fixed: backup to flashdrive setting (entry could have been possibly corrupted under 2016.09.03)
+- Added: Script to delete old dated backups in addition to ALL backups and error backups only
+- Changed: Update Apps now called Legacy Mode. Selecting again goes back to appFeed mode
+- Removed: Private Repositories via a GitHub repo.
+- Added: Selectable notifications on autoupdates of plugins
+- Added: XML Branch support while in Legacy Mode
+- Fixed: Display aberrations while in legacy mode if some repositories didn't download
+- Added: Legacy mode will now display any XML's which failed to parse
+
+###2016.09.07###
+- Fixed VM XML's not backing up under certain circumstances
+- Do not delete XML backups if source is no longer available
+- Added Dynamic adjustment of templates based upon user input
+
+###2016.09.06###
+- Fixed Backup/Restore settings module not working
+- Added Selectable display for Random App Of Day
+
+###2016.09.04###
+- Under certain cirumstances, app of the day could crash CA
+- Download compressed version of appfeed
+
+###2016.09.03###
+- Added in VM XML backups
+- Major rewrite of display engine (faster, far smaller)
+- Fix app of day to not possibly display moderated apps if app feed happened to change during the day
+- Fix various buttons not properly getting disabled when forcing update under certain circumstances
+- Fixed search on author where apps would always display as being installed
+- Far too many coding changes to list
+
+###2016.08.13###
+- Maintenance Update
+- Added Apps of the day
+- Fixed display abnormalities in Table Mode under certain conditions / templates
+- Fixed displayed borders on popups
+- Updated manual
+- Removed extraneous code
+- Fixed base image display when in legacy mode
+
+###2016.08.07###
+- Added in ability to flag / pin apps for later viewing
+
+###2016.08.03###
+- Fixed: Restore appdata when using user shares as a destination
+
+###2016.07.31###
+- Support user shares as source and destination for appdata backup on 6.2-rc3+
+
+###2016.07.23###
+- Major revamp to backup/restore appdata module (see thread for details)
+
+###2016.07.16###
+- Better logging for CA Backup
+
+###2016.07.08###
+- Bug fix on dockerHub searches vs recommended applications
+
+###2016.07.04###
+- Fixed cleanup appdata if an installed app doesn't have any volume mappings
+
+###2016.07.01###
+- Support Separate Destinations for Flash Drive Backup
+
+###2016.06.29###
+- Backup Disk Assignments and super.dat (renamed) as part of USB backup
+
+###2016.06.26###
+- Backup options not displaying the set value for save log to flash
+- Fix improper displaying of source and destination on popup (restore)
+- Suppress errors displayed when selecting a UD mount for backup purposes
+- Added in backup of flash drive (sans super.dat) to docker appdata prior to backing up to array
+
+###2016.06.25k###
+- Add directions for backups for UD mounted shares
+
+###2016.06.13###
+- Fix typos
+- Prevent appdata cleanup from deleting parent folders (due to severely misconfigured previous template)
+- Add support and project links back to table mode (not sure how / when they got removed)
+
+###2016.06.12###
+- Miscellaneous enhancements and fixes
+
+###2016.06.11###
+- Added: New module to delete orphaned appdata folders
+- Better appdata determination if running unRaid 6.2+
+
+###2016.06.05###
+- Fixed: Prevent invalid Support and Project URLs from displaying
+
+###2016.06.02###
+- Add in option to speed up backups when using dated backups with automatic deletions
+
+###2016.05.30###
+- Add in automatic deletion of old dated backup sets
+
+###2016.05.12###
+- Add in dated backup of appdata
+
+###2016.05.08###
+- Fixed some bugs with AutoUpdate displays
+
+###2016.05.05###
+- Enhanced: Backup - better logging into syslog
+- Added: Configurable logging options
+- Fixed: Suppress errors if plugins don't have a readme
+
+###2016.05.01###
+- Added Configurable notifications on apppdata backup
+- Added Exluded folders to appdata backup
+- Updated: CA manual
+- Added rsync errors now logged
+- Lowered memory footprint of program
+
+###2016.04.30###
+- Better warnings on overwrites
+- Added ability to set backup destinations to a subfolder
+- Enhanced script selection / share selection
+- Added ability to skip docker.img file on backups
+- Fix autoupdate of applications would not always only display installed plugins
+
+###2016.04.28###
+- Added: Support for manual / scheduled backups of appData
+
+###2016.04.17###
+- Added: Ability to Auto Update Selected Plugins
+
+###2016.04.16###
+- Fix: PHP exception when only a single Config entry is present
+- Fix: Date application updated when in Legacy mode
+
+###2016.04.10###
+- Enhanced: Further security improvements
+- Enhanced: cAdvisor template is now 6.2 compliant
+- Fix: Suppress error if no docker applications running when in resource monitor
+- Added: Ability to install updates for docker applications
+- Enhanced: Better determination of appFeed failure
+- Added: Confirmation on Update Applications button
+- Updated: Manual, Credits
+
+###2016.04.01###
+- Fix: Under certain circumstances, data structures could get corrupted
+- Enhanced: Further security enhancements
+
+###2016.03.31###
+- Security Fix: Prevent arbitrary execution of code from malicious templates
+- Fix: Sanitize all Overview out of specification
+- Fix: Resource monitor not recognizing cAdvisor installed if name changed
+- Fix: Renamed apps will not display usage stats in popup
+- Added: option to show change log for CA when updating itself
+- Changed: default Host port for cAdvisor to 9243 (something oddball that probably won't conflict with anything else)
+- Added: if cAdvisor installed, but not running, abilty to start it within CA
+- Updated: Manual
+
+###2016.03.28###
+- Coding optimizations
+- Fixed: Don't display a support link if no support link available
+- Fixed: Add web-page link if repository authors have a web page
+- Added: Ability to install updates for plugins
+- Fixed: Resource Monitor not displaying icons for customized appFeed apps
+- Fixed: Determination of appdata is now case-insensitive when looking for /config
+- Fixed: dockerHub conversions now follow settings for new tab or same tab
+- Changed: Default value for new tab or same tab is now same tab
+
+###2016.03.26###
+- Fixed: Customized apps (based upon a default one in appfeed) were being tagged as incompatible
+- Enhanced: Friendly reminder if CA is out of date
+
+###2016.03.24###
+- Fixed: Installing previous apps on unRaid 6.2
+- Enhanced: Now fully generates v6.2 compliant xml files for dockerMan
+
+###2016.03.20###
+- Fixed: readmore on searches (regression error)
+- Fixed: private repositories (dockerHub searches) were being saved into wrong folder (regression error)
+- Enhanced: Update Applications (or reversion to legacy mode) will not fail if a single repository fails to download
+- Enhanced: Now include cAdvisor XML template so as to not rely upon smdion's repository
+- Enhanced: Popup descriptions now include links to go to cAdvisor's page for running docker applications
+- Enhanced: Templates passed through to dockerMan are now Moderated to allow CA to fix any errors, typos, etc in the author's template
+- Enhanced: Major overhaul of the XML template generation
+- Enhanced: Continuing code cleanup
+
+###2016.03.13###
+- Properly regress to legacy mode in case of improperly formed appFeed
+- Overhaul of the javascript
+
+###2016.03.12###
+- Remove option to relocate Users menu (and relocate Apps Tab) Use webUI's display settings instead
+- Remove option to set appdata share. CA now always prompts to delete appdata if it sees a /config container path
+- Resource Monitor supports appdata's stored anywhere on your system (and within multiple folders)
+- Fixed: Minor display aberration introduced by unRaid 6.2 beta 18
+- Fixed: If a calculation of appdata size was in progress you could not stop the array
+
+###2016.03.10###
+- Further enhanced Resource Monitor
+
+###2016.03.06###
+- Fixed: Private Repositories now updated every session
+- Added: Resource Monitor for Docker Applications
+
+###2016.03.04###
+- Added: Running docker applications will now dynamically display CPU and memory utilization statistics
+- Various other fixes / enhancements
+
+###2016.02.20###
+- Fixed: Under certain circumstances, the domain URL listed in a plugin might not be what the author actually specified (eg: raw.github.com vs raw.githubusercontent.com) causing some plugins to not display in the previously installed section
+
+###2016.02.19###
+- Hot fix for special characters contained within templates
+
+###2016.02.18###
+- Added: Support Licence (and its mispelling of License) in templates
+- Fixed: Under certain circumstances, Reinstall button could show up instead of Install
+
+###2016.02.14###
+- Code Cleanup
+- Don't display dockerHub stars if not starred
+- Hide search dockerHub if in previous / installed apps
+- Fix error in settings if temp directory didn't exist
+
+###2016.02.10###
+- Suppress stars.sh error message
+
+###2016.02.08###
+- Fixed: Issue with going from dockerHub searches to installed / previously installed
+- Fixed: Disallow dockerHub searches if docker not enabled
+- Fixed: Disallow adding a previously installed docker app if docker not enabled
+- Removed: Legacy Code
+- Removed: dockerHub guess at Icons (api broken)
+- Fixed: Suppress an error message due to a bad template
+- Fixed: Remove some extra temp files once not needed anymore
+
+###2016.02.06###
+- Fixed: display abnormality with Firefox
+- Enhanced: More intelligent determination of d/l counts
+- Enhanced: Rearrange display icons
+- Enhanced: Table Mode
+- Added: Ability to display installed apps within available lists
+
+###2016.02.04###
+- Fix issue with duplicate plugin names
+
+###2016.02.03###
+- Suppress docker error messages if docker not running
+- Full information on an app now displays total downloads
+- Add sort by downloads
+
+###2016.02.01###
+- Going forward, unRaid version 6.1+ compatible only
+- Fixed: Applications with 2 identical names could disappear from the lists
+- Added: Uninstall any application within CA
+- Added: Optional deleting of an application's appdata - see manual for details
+- Added: Favourite Repositories
+- Fixed: Moderator Comments Now only download once per session
+- Removed: Local server caching of icons (made no sense to me)
+
+###2016.01.30###
+- Added: Separate Installed Apps from categories
+- Added: Separate Installed Apps from previously installed
+- Added: Incorporate Plugins to installed / previously installed
+- Updated: Manual
+
+###2016.01.28###
+- Added: Ability to manage previously installed docker apps (my* templates)
+
+###2016.01.24###
+- Fix: Under certain circumstances, blank templates would appear
+
+###2016.01.16###
+- Fix: Under certain circumstances, updated moderator comments were not being downloaded
+- Fix: Under certain circumstances, errors would appear on the popup descriptions
+
+###2016.01.13###
+- Fix: Suppress extraneous message on local console during installation
+
+###2016.01.10b###
+- Change: Appfeed now only downloaded if it has changed
+
+###2016.01.10###
+- Add: Option to not redownload appfeed if reloading apps within a certain time period
+- Fix: Alternate icon wasn't displaying properly if template's icon was unavailable
+- Updated: Help / Manual
+
+###2016.01.02###
+- Fix: Prevent malformed templates from displaying
+- Fix: All private containers were being tagged as being incompatible
+- Change AppStore to Apps
+
+###2015.12.18###
+- Add support for enforcement of application OS requirements (see help thread)
+
+###2015.12.12a###
+- Selectable add/edit/settings windows in new tab or not
+
+###2015.12.12###
+- Fix: Minor Icon Issues
+- Fix: Plugin changelogs now same format as within a .plg file
+- Fix: Not all plugins would properly go to the settings page
+- Fix: Plugins not sorting by Author name
+- Update: Help / Manual
+
+###2015.12.08###
+- Minor Bug Fixes
+- Settings Button for already install plugins will take you to the plugin settings
+
+###2015.12.06a###
+- Disable Update Applications button if an update is in progress NOTE: There is normally zero reason to hit this button anyways
+- Fix: Allow user selectable positioning of the AppStore. (Either on the main menu, within settings, or on main menu and move Users to settings)
+
+###2015.12.06###
+THIS IS A REQUIRED UPDATE
+
+- Relocate plugin from docker tab to its own tab (AppStore)
+- Now able to display and install available plugins
+- Docker no longer required to be enabled to browse applications
+
+###2015.12.05###
+- Fixed: System wouldn't let you add any application if a private repository was present
+
+###2015.10.10###
+- Suppress commands executed with /bin/sh appearing on local monitor
+
+###2015.09.29###
+- Fixed memory leak with application feed
+
+###2015.09.20###
+- Add in super categories for beta and private (selectable from settings)
+- More tweaks to docker conversion engine
+- Sanitize the input on searches
+ relocate temporary files to ram
+- various other fixes and tweaks
+
+###2015.09.15###
+- Remove code for unimplemented features
+- Disallow installing dockerHub result if a recommended application uses the same repository
+- Fix: *.xml not found was appearing on local terminal if no private repositories were found
+
+###2015.09.12###
+- Complete rewrite of dockerHub conversion code, adding more exceptions
+- Fix: Clearing search terms no longer displays all containers
+- Added in support for moderator comments on a container
+- Added in ability to blacklist specific containers
+
+###2015.09.01###
+- Implement change required due to dockerHub changing website again (used in dockerHub search mode)
+- Add suggested searches for dockerHub
+- Numerous under the hood improvements
+
+###2015.08.24###
+- Handle new restrictions introduced in RC6
+
+###2015.08.23###
+- Suppress some spurious status messages on unRaid's attached monitor
+- Expanded manual
+- Display dockerHub star ratings for ALL templates
+
+###2015.08.20###
+- Better search results for icons on dockerHub
+- Search for other containers from author (template mode)
+- Resolved issue with spaces in search parameters
+- Internal reorganization
+
+###2015.08.15###
+- Added in BaseOS display when not in appFeed mode
+- Added in Full GUI for searching and converting non-unRaid containers. (See support thread for details)
+- Miscellaneous fixes
+
+###2015.08.12###
+- Hot Fix for 6.1RC-3
+
+###2015.08.09###
+- Hot fix for templates with duplicate tags
+- Pop up free in appfeed mode
+
+###2015.08.02###
+- Handle blank descriptions, categories, overviews in appFeed mode
+- Fix not able to show changelog on application names containing spaces
+- Integrate searching (and converting) from dockerHub
+
+###2015.07.26a###
+- Hot fix for 6.1 RC-2
+
+###2015.07.25c###
+- Fixed Internet Explorer crashing
+- Added Icon Details view mode
+
+###2015.07.23###
+- Unified UI between icon and table mode
+- Switch between icon and table mode on the fly
+- Faster sorting in icon mode
+- Add sort by date updated
+
+###Note: you must allow your browser to display popups from your server when in appFeed mode###
+
+###2015.07.20###
+- Code unified between tables and icons
+- Added pop up descriptions to table mode, hover descriptions to icon mode
+- Fix intermittent bug where a blank template could appear
+
+###2015.07.19###
+- 6.1rc-1 Broke Community Applications - Fixed
+
+###2015.07.18###
+- Coding Improvements
+- Revamp Icon Mode Descriptions
+- Add support for Project Home Page links
+
+###2015.07.16###
+- Significantly reduce memory footprint
+- Allow private repositories to be used in conjunction with application feed
+- Force Update in application feed mode will temporarily revert to template mode
+- Failure to download application feed will revert system to template mode
+
+###2015.07.15###
+- Added option to automatically update the application list when entering Docker tab
+- Added in support for Kode's real-time application feed update
+- Remove background table lines in icon mode
+- Removed option to automatically fill out template paths
+
+###2015.07.08###
+- Clicking the repository will now open the announcement thread in a new tab
+
+###2015.07.04###
+- Added in option to display small icons in icon mode
+- Optionally overwrite ALL host paths when in experimental overwrite host path mode
+
+###2015.07.02###
+- Fixed display abberation in table mode when searching for application with change log
+###2015.07.01###
+- Added an experimental option to automatically fill in host paths. See support thread for details.
+
+###2015.06.21###
+- Table Mode: Repository was not displaying (introduced in 2015.06.14) (my bad - never noticed)
+
+###2015.06.18###
+- Changed to a more intuitive Apply / Done buttons in settings
+
+###2016.06.17###
+- Fixed table header sometimes displaying in Icon Mode
+- Made settings default values consistent between modules
+- Added help text for Icon Mode
+- Icon mode now default
+
+###2015.06.15###
+- Expanded descriptions in Icon mode
+- Fixed applications in beta repositories not being flagged correctly
+
+###2015.06.14a###
+- Fixed cursor over information icon and application icon (Icon mode)
+- Fixed applications not displaying description if a space was in the name (Icon mode)
+
+###2015.06.14###
+- Added Icon view mode (more mobile friendly!)
+
+###2015.06.11###
+- Coding optimizations
+- Add help text
+
+###2015.06.08###
+- Added support for new / updated containers
+- Expanded settings section
+
+###2015.06.06###
+- Added a settings section
+
+###2015.06.03a###
+- Optional local caching of application icons
+
+###2015.06.03###
+- Initial display is now blank (faster)
+- Going from subcategory to all categories no longer displays all categories
+
+###2015.06.02###
+- Added support for Changes tag
+- Added non-intrusive reminder to update applications after 14 days
+
+###2015.05.31###
+- Renamed DNS Servers to be DNS Client / Servers
+
+###2015.05.30###
+- Miscellaneous download fixes
+
+###2015.05.28###
+- Initial Release
+
+
+
+
+
+
+]]>
+
+
+
+
+
+# Remove old 'source' files
+rm -f $(ls /boot/config/plugins/&name;/&name;*.txz 2>/dev/null|grep -v '&version;')
+if [[ -d /boot/config/plugins/repo.update ]]; then rm -rf /boot/config/plugins/repo.update; fi
+if [[ -d /usr/local/emhttp/plugins/repo.update ]]; then rm -rf /usr/local/emhttp/plugins/repo.update; fi
+if [[ -n $(ls /boot/config/plugins/repo.update*.plg 2>/dev/null) ]]; then rm /boot/config/plugins/repo.update*.plg; fi
+
+if [[ -e /tmp/community.applications/tempFiles/templates.json ]]; then rm /tmp/community.applications/tempFiles/templates.json; fi
+
+
+
+
+
+https://raw.github.com/&github;/master/archive/&name;-&version;.txz
+&md5;
+
+
+
+
+
+echo "Creating Directories"
+mkdir -p /var/lib/docker/unraid/templates-community-apps
+mkdir -p /var/lib/docker/unraid/community.applications.datastore
+mkdir -p /tmp/community.applications/tempFiles
+mkdir -p /boot/config/plugins/community.applications
+
+echo ""
+echo "----------------------------------------------------"
+echo " &name; has been installed."
+echo " Copyright 2015-2016, Andrew Zawadzki"
+echo " Version: &version;"
+echo "----------------------------------------------------"
+echo ""
+
+
+
+
+
+
+/usr/local/emhttp/plugins/community.applications/scripts/removeCron.php
+removepkg &name;-&version;
+rm -rf &plugdir;
+rm -rf /boot/config/plugins/&name;
+rm -rf /var/lib/docker/unraid/templates-community
+
+
+
diff --git a/source/community.applications/pkg_build.sh b/source/community.applications/pkg_build.sh
new file mode 100644
index 00000000..2dc85fc1
--- /dev/null
+++ b/source/community.applications/pkg_build.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+DIR="$(dirname "$(readlink -f ${BASH_SOURCE[0]})")"
+tmpdir=/tmp/tmp.$(( $RANDOM * 19318203981230 + 40 ))
+plugin=$(basename ${DIR})
+archive="$(dirname $(dirname ${DIR}))/archive"
+version=$(date +"%Y.%m.%d")$1
+
+mkdir -p $tmpdir
+
+cp --parents -f $(find . -type f ! \( -iname "pkg_build.sh" -o -iname "sftp-config.json" \) ) $tmpdir/
+cd $tmpdir
+makepkg -l y -c y ${archive}/${plugin}-${version}.txz
+rm -rf $tmpdir
+echo "MD5:"
+md5sum ${archive}/${plugin}-${version}.txz
+
diff --git a/source/community.applications/usr/local/emhttp/plugins/community.applications/Apps.page b/source/community.applications/usr/local/emhttp/plugins/community.applications/Apps.page
new file mode 100644
index 00000000..56599c65
--- /dev/null
+++ b/source/community.applications/usr/local/emhttp/plugins/community.applications/Apps.page
@@ -0,0 +1,4 @@
+Menu="Tasks:80"
+Name="Apps"
+Type="xmenu"
+Tabs="true"
diff --git a/source/community.applications/usr/local/emhttp/plugins/community.applications/CA.page b/source/community.applications/usr/local/emhttp/plugins/community.applications/CA.page
new file mode 100644
index 00000000..a347f2ba
--- /dev/null
+++ b/source/community.applications/usr/local/emhttp/plugins/community.applications/CA.page
@@ -0,0 +1,4 @@
+Menu="Settings"
+Title="Community Applications"
+Icon="CA.png"
+Type="menu"
diff --git a/source/community.applications/usr/local/emhttp/plugins/community.applications/CommunityApps.page b/source/community.applications/usr/local/emhttp/plugins/community.applications/CommunityApps.page
new file mode 100644
index 00000000..a54764d9
--- /dev/null
+++ b/source/community.applications/usr/local/emhttp/plugins/community.applications/CommunityApps.page
@@ -0,0 +1,1459 @@
+Menu="Apps"
+Icon="community.applications.png"
+Title="Community Applications"
+---
+
+###############################################################
+# #
+# Community Applications copyright 2015-2017, Andrew Zawadzki #
+# #
+###############################################################
+
+require_once("/usr/local/emhttp/plugins/community.applications/include/paths.php");
+require_once("/usr/local/emhttp/plugins/community.applications/include/caCredits.php");
+$plugin = "community.applications";
+
+$installedVersion = exec("/usr/local/emhttp/plugins/dynamix.plugin.manager/scripts/plugin version /var/log/plugins/$plugin.plg");
+$upgradeVersion = (is_file("/tmp/plugins/community.applications.plg")) ? exec("/usr/local/emhttp/plugins/dynamix.plugin.manager/scripts/plugin version /tmp/plugins/$plugin.plg") : "0";
+if ( $installedVersion < $upgradeVersion ) {
+ $upgradeAvailable = "true";
+}
+$cfg = parse_plugin_cfg($plugin);
+
+if ( ! is_file($communityPaths['warningAccepted']) ) {
+ $firstRun = "true";
+}
+$vars = parse_ini_file($communityPaths['unRaidVars']);
+$toolTipsterIncluded = version_compare($vars['version'],"6.3.3",">=") ? "true" : "false";
+$unRaid64 = (version_compare($vars['version'],"6.4.0-rc0",">=")) ? "true" : "false";
+$unRaid635 = (version_compare($vars['version'],"6.3.5",">=")) ? "true" : "false";
+
+$tabMode = "_self";
+$line_color = $display['theme']=='black' ? '#202020' : '#E8E8E8';
+
+$timeNew = str_replace("-","",$cfg['timeNew']);
+$categoryTitle = "Recommended Applications";
+$viewMode = $cfg['viewMode'];
+$execPath = "/plugins/$plugin/scripts";
+
+$dockerRunning = (is_dir("/var/lib/docker/containers")) ? "true" : "false";
+
+$template = json_decode(file_get_contents($communityPaths['defaultSkin']),true);
+
+$pluginInstallPending = @file_get_contents($communityPaths['PluginInstallPending']);
+@unlink($communityPaths['PluginInstallPending']);
+
+?>
+
+
+
+
+
+
+
+
";
+
+ $description = "Click to go to the dockerHub website for this container";
+ if ( $result['Description'] ) {
+ $description = $result['Description']."
";
+ echo $t;
+ echo dockerNavigate($num_pages,$pageNumber);
+}
+
+############################################
+############################################
+## ##
+## BEGIN MAIN ROUTINES CALLED BY THE HTML ##
+## ##
+############################################
+############################################
+
+switch ($_POST['action']) {
+
+######################################################################################
+# #
+# get_content - get the results from templates according to categories, filters, etc #
+# #
+######################################################################################
+case 'get_content':
+ $filter = getPost("filter",false);
+ $category = "/".getPost("category",false)."/i";
+ $newApp = getPost("newApp",false);
+ $sortOrder = getSortOrder(getPostArray("sortOrder"));
+ $windowWidth = getPost("windowWidth",false);
+ getMaxColumns($windowWidth);
+
+ $newAppTime = strtotime($communitySettings['timeNew']);
+
+ if ( file_exists($communityPaths['addConverted']) ) {
+ @unlink($infoFile);
+ @unlink($communityPaths['addConverted']);
+ }
+
+ if ( file_exists($communityPaths['appFeedOverride']) ) {
+ $communitySettings['appFeed'] = "false";
+ @unlink($communityPaths['appFeedOverride']);
+ }
+
+ if (!file_exists($infoFile)) {
+ if ( $communitySettings['appFeed'] == "true" ) {
+ DownloadApplicationFeed();
+ if (!file_exists($infoFile)) {
+# $communitySettings['appFeed'] = "false"; # Do Not automatically revert. Toss up a message instead
+ echo "
Download of appfeed failed.
Community Applications requires your server to have internet access. The most common cause of this failure is a failure to resolve DNS addresses. You can try and reset your modem and router to fix this issue, or set static DNS addresses (Settings - Network Settings) of 8.8.8.8 and 8.8.4.4 and try again.
Alternatively, there is also a chance that the server handling the application feed is temporarily down. Switching CA to operate in Legacy Mode might temporarily allow you to still utilize CA. ";
+ exec("curl --compressed --max-time 60 --insecure --location -o ".$communityPaths['tempFiles']."/failedOutput ".$communityPaths['application-feed'],$out);
+ foreach ($out as $line) {
+ echo "$line ";
+ }
+ $out = @file_get_contents($communityPaths['tempFiles']."/failedOutput");
+ $out = str_replace("\n"," ",$out);
+ echo "$out";
+ @unlink($infoFile);
+ }
+ }
+
+ if ($communitySettings['appFeed'] == "false" ) {
+ if (!DownloadCommunityTemplates()) {
+ echo "
Download of appfeed failed.
Community Applications requires your server to have internet access. The most common cause of this failure is a failure to resolve DNS addresses. You can try and reset your modem and router to fix this issue, or set static DNS addresses (Settings - Network Settings) of 8.8.8.8 and 8.8.4.4 and try again.
Alternatively, there is also a chance that the server handling templates (GitHub.com) is temporarily down.";
+ break;
+ } else {
+ $lastUpdated['last_updated_timestamp'] = time();
+ writeJsonFile($communityPaths['lastUpdated-old'],$lastUpdated);
+ if (is_file($communityPaths['updateErrors'])) {
+ echo "
";
+?>
+
+
+ foreach ($dockers as $docker) {
+ echo "Starting $docker ";
+ unset($output);
+ exec("docker start $docker 2>&1",$output,$retval);
+ if ($retval) {
+ $failFlag = true;
+ echo "$docker failed to start. You should install it alone (by clicking on the application) to fix the errors ";
+ foreach ($output as $line) {
+ echo "$line ";
+ }
+ echo " ";
+ }
+ }
+ echo " Setting installed applications to autostart ";
+ $autostartFile = @file("/var/lib/docker/unraid-autostart",FILE_IGNORE_NEW_LINES);
+ if ( ! $autostartFile ) {
+ $autostartFile = array();
+ }
+ foreach ($autostartFile as $line) {
+ $autostart[$line] = true;
+ }
+ foreach ($dockers as $docker) {
+ $autostart[$docker] = true;
+ }
+ $autostartFile = implode("\n",array_keys($autostart));
+ file_put_contents("/var/lib/docker/unraid-autostart",$autostartFile);
+ if ( $_GET['plugin'] ) {
+ file_put_contents($communityPaths['PluginInstallPending'],$_GET['plugin']);
+ }
+ if ( $failFlag || !$_GET['plugin']) {
+ echo " Docker Application Installation finished. ";
+ } else {
+ echo "";
+ }
+}
+?>
+
+
+
+
+
diff --git a/source/community.applications/usr/local/emhttp/plugins/community.applications/scripts/installMultiPlugin.sh b/source/community.applications/usr/local/emhttp/plugins/community.applications/scripts/installMultiPlugin.sh
new file mode 100644
index 00000000..95687074
--- /dev/null
+++ b/source/community.applications/usr/local/emhttp/plugins/community.applications/scripts/installMultiPlugin.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+IFS="*" read -r -a array <<< "$1"
+for element in "${array[@]}"
+do
+ /usr/local/sbin/plugin install "$element"
+done
+
+echo
+echo "*************************************************************************************************************************"
+echo "* Finished Installing. If the DONE button did not appear, then you will need to click the red X in the top right corner *"
+echo "* (Certain plugins will cause this issue due to how they are installed.) *"
+echo "*************************************************************************************************************************"
+echo
+echo
+
diff --git a/source/community.applications/usr/local/emhttp/plugins/community.applications/scripts/showBlacklist.php b/source/community.applications/usr/local/emhttp/plugins/community.applications/scripts/showBlacklist.php
new file mode 100644
index 00000000..2f0c3465
--- /dev/null
+++ b/source/community.applications/usr/local/emhttp/plugins/community.applications/scripts/showBlacklist.php
@@ -0,0 +1,13 @@
+";
+if ( ! $moderation ) {
+ echo "
No blacklisted apps found
";
+ return;
+}
+$moderation = str_replace(" "," ",$moderation);
+$moderation = str_replace("\n"," ",$moderation);
+echo "These applications are still found within the application feed. CA will never allow you to install or reinstall these applications
";
+ return;
+}
+echo "Deprecated Applications are able to still be installed if you have previously had them installed. New installations of these applications are blocked unless you enable Display Deprecated Applications within CA's General Settings
" : "";
+
+# In this day and age with auto-updating apps, NO ONE keeps up to date with the date updated. Remove from docker containers to avoid confusion
+if ( $template['Date'] && $template['Plugin'] ) {
+ $niceDate = date("F j, Y",$template['Date']);
+ $templateDescription .= "
$donatetext ";
+ if ( $template['RepoName'] != "Squid's plugin Repository" ) {
+ $templateDescription .= " The above link is set by the author of the template, not the author of Community Applications
";
+ return;
+}
+$moderation = str_replace(" "," ",$moderation);
+$moderation = str_replace("\n"," ",$moderation);
+echo "All of these errors found have been fixed automatically. These errors only affect the operation of Community Applications. The template may have other errors present
";
+ return;
+}
+echo "While highly not recommended to do, incompatible applications can be installed by enabling Display Incompatible Applications within CA's General Settings
$donatetext ";
+ if ( $template['RepoName'] != "Squid's plugin Repository" ) {
+ $appInformation .= " The above link is set by the author of the template, not the author of Community Applications
";
+ return;
+}
+$moderation = str_replace(" "," ",$moderation);
+$moderation = str_replace("\n"," ",$moderation);
+echo "These templates are invalid and the application they are referring to is unknown