From 572bb35054f5a715e152db02749d3d699fe66548 Mon Sep 17 00:00:00 2001
From: Brian Weaver <weaver.299@osu.edu>
Date: Mon, 26 Apr 2021 11:12:32 -0400
Subject: [PATCH] Remove unused draggableviews module

---
 composer.json                                 |   1 -
 composer.lock                                 |  70 +---
 vendor/composer/InstalledVersions.php         |  13 +-
 vendor/composer/installed.json                |  70 ----
 vendor/composer/installed.php                 |  13 +-
 web/modules/draggableviews/LICENSE.txt        | 339 ------------------
 .../draggableviews/draggableviews.info.yml    |  12 -
 .../draggableviews/draggableviews.install     |  72 ----
 .../draggableviews/draggableviews.module      | 187 ----------
 .../draggableviews.permissions.yml            |   4 -
 .../draggableviews/src/DraggableViews.php     |  88 -----
 .../migrate/destination/DraggableViews.php    |  82 -----
 .../views/field/DraggableViewsField.php       |  90 -----
 13 files changed, 5 insertions(+), 1036 deletions(-)
 delete mode 100644 web/modules/draggableviews/LICENSE.txt
 delete mode 100644 web/modules/draggableviews/draggableviews.info.yml
 delete mode 100644 web/modules/draggableviews/draggableviews.install
 delete mode 100644 web/modules/draggableviews/draggableviews.module
 delete mode 100644 web/modules/draggableviews/draggableviews.permissions.yml
 delete mode 100644 web/modules/draggableviews/src/DraggableViews.php
 delete mode 100644 web/modules/draggableviews/src/Plugin/migrate/destination/DraggableViews.php
 delete mode 100644 web/modules/draggableviews/src/Plugin/views/field/DraggableViewsField.php

diff --git a/composer.json b/composer.json
index 7d7236e26e..2734f366b3 100644
--- a/composer.json
+++ b/composer.json
@@ -111,7 +111,6 @@
         "drupal/crop": "2.1",
         "drupal/ctools": "3.5",
         "drupal/devel": "2.0",
-        "drupal/draggableviews": "1.0",
         "drupal/dropzonejs": "2.5",
         "drupal/editor_advanced_link": "1.8",
         "drupal/embed": "1.4",
diff --git a/composer.lock b/composer.lock
index d541fe7873..c5a6e6cb0d 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
         "This file is @generated automatically"
     ],
-    "content-hash": "843798e535532282f5f95604c8d1c8db",
+    "content-hash": "228238f99da160eaea40e7d2843b01a3",
     "packages": [
         {
             "name": "alchemy/zippy",
@@ -4144,74 +4144,6 @@
                 "irc": "irc://irc.freenode.org/drupal-contribute"
             }
         },
-        {
-            "name": "drupal/draggableviews",
-            "version": "1.0.0",
-            "source": {
-                "type": "git",
-                "url": "https://git.drupalcode.org/project/draggableviews.git",
-                "reference": "8.x-1.0"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://ftp.drupal.org/files/projects/draggableviews-8.x-1.0.zip",
-                "reference": "8.x-1.0",
-                "shasum": "007082c2621b45bd8cf73fe5fdd4d292ee88a458"
-            },
-            "require": {
-                "drupal/core": "^8"
-            },
-            "type": "drupal-module",
-            "extra": {
-                "drupal": {
-                    "version": "8.x-1.0",
-                    "datestamp": "1541510881",
-                    "security-coverage": {
-                        "status": "covered",
-                        "message": "Covered by Drupal's security advisory policy"
-                    }
-                }
-            },
-            "notification-url": "https://packages.drupal.org/8/downloads",
-            "license": [
-                "GPL-2.0-or-later"
-            ],
-            "authors": [
-                {
-                    "name": "dixon_",
-                    "homepage": "https://www.drupal.org/user/239911"
-                },
-                {
-                    "name": "ginc",
-                    "homepage": "https://www.drupal.org/user/332249"
-                },
-                {
-                    "name": "hanoii",
-                    "homepage": "https://www.drupal.org/user/23157"
-                },
-                {
-                    "name": "iStryker",
-                    "homepage": "https://www.drupal.org/user/303676"
-                },
-                {
-                    "name": "podarok",
-                    "homepage": "https://www.drupal.org/user/116002"
-                },
-                {
-                    "name": "sevi",
-                    "homepage": "https://www.drupal.org/user/199290"
-                },
-                {
-                    "name": "ygerasimov",
-                    "homepage": "https://www.drupal.org/user/257311"
-                }
-            ],
-            "description": "Complete rewrite of D7 draggableviews",
-            "homepage": "https://www.drupal.org/project/draggableviews",
-            "support": {
-                "source": "https://git.drupalcode.org/project/draggableviews"
-            }
-        },
         {
             "name": "drupal/dropzonejs",
             "version": "2.5.0",
diff --git a/vendor/composer/InstalledVersions.php b/vendor/composer/InstalledVersions.php
index daedd43494..9f3000849d 100644
--- a/vendor/composer/InstalledVersions.php
+++ b/vendor/composer/InstalledVersions.php
@@ -30,7 +30,7 @@ class InstalledVersions
     'aliases' => 
     array (
     ),
-    'reference' => '11ac4bc4a7dc85d65a11da78cbdc0ddccfae171d',
+    'reference' => 'fb181bce9c126206eb904564a795200a8dbc2b7e',
     'name' => 'osu-asc-webservices/d8-upstream',
   ),
   'versions' => 
@@ -975,15 +975,6 @@ class InstalledVersions
       ),
       'reference' => '8.x-2.0',
     ),
-    'drupal/draggableviews' => 
-    array (
-      'pretty_version' => '1.0.0',
-      'version' => '1.0.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '8.x-1.0',
-    ),
     'drupal/dropzonejs' => 
     array (
       'pretty_version' => '2.5.0',
@@ -2431,7 +2422,7 @@ class InstalledVersions
       'aliases' => 
       array (
       ),
-      'reference' => '11ac4bc4a7dc85d65a11da78cbdc0ddccfae171d',
+      'reference' => 'fb181bce9c126206eb904564a795200a8dbc2b7e',
     ),
     'pantheon-systems/quicksilver-pushback' => 
     array (
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index a98ae92220..896056a9c2 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -4214,76 +4214,6 @@
             },
             "install-path": "../../web/modules/devel"
         },
-        {
-            "name": "drupal/draggableviews",
-            "version": "1.0.0",
-            "version_normalized": "1.0.0.0",
-            "source": {
-                "type": "git",
-                "url": "https://git.drupalcode.org/project/draggableviews.git",
-                "reference": "8.x-1.0"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://ftp.drupal.org/files/projects/draggableviews-8.x-1.0.zip",
-                "reference": "8.x-1.0",
-                "shasum": "007082c2621b45bd8cf73fe5fdd4d292ee88a458"
-            },
-            "require": {
-                "drupal/core": "*"
-            },
-            "type": "drupal-module",
-            "extra": {
-                "branch-alias": {
-                    "dev-1.x": "1.x-dev"
-                },
-                "drupal": {
-                    "version": "8.x-1.0",
-                    "datestamp": "1477076039",
-                    "security-coverage": {
-                        "status": "covered",
-                        "message": "Covered by Drupal's security advisory policy"
-                    }
-                }
-            },
-            "installation-source": "dist",
-            "notification-url": "https://packages.drupal.org/8/downloads",
-            "license": [
-                "GPL-2.0-or-later"
-            ],
-            "authors": [
-                {
-                    "name": "dixon_",
-                    "homepage": "https://www.drupal.org/user/239911"
-                },
-                {
-                    "name": "ginc",
-                    "homepage": "https://www.drupal.org/user/332249"
-                },
-                {
-                    "name": "iStryker",
-                    "homepage": "https://www.drupal.org/user/303676"
-                },
-                {
-                    "name": "podarok",
-                    "homepage": "https://www.drupal.org/user/116002"
-                },
-                {
-                    "name": "sevi",
-                    "homepage": "https://www.drupal.org/user/199290"
-                },
-                {
-                    "name": "ygerasimov",
-                    "homepage": "https://www.drupal.org/user/257311"
-                }
-            ],
-            "description": "Complete rewrite of D7 draggableviews",
-            "homepage": "https://www.drupal.org/project/draggableviews",
-            "support": {
-                "source": "http://cgit.drupalcode.org/draggableviews"
-            },
-            "install-path": "../../web/modules/draggableviews"
-        },
         {
             "name": "drupal/dropzonejs",
             "version": "2.5.0",
diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php
index db81400749..e6cf08befc 100644
--- a/vendor/composer/installed.php
+++ b/vendor/composer/installed.php
@@ -6,7 +6,7 @@
     'aliases' => 
     array (
     ),
-    'reference' => '11ac4bc4a7dc85d65a11da78cbdc0ddccfae171d',
+    'reference' => 'fb181bce9c126206eb904564a795200a8dbc2b7e',
     'name' => 'osu-asc-webservices/d8-upstream',
   ),
   'versions' => 
@@ -951,15 +951,6 @@
       ),
       'reference' => '8.x-2.0',
     ),
-    'drupal/draggableviews' => 
-    array (
-      'pretty_version' => '1.0.0',
-      'version' => '1.0.0.0',
-      'aliases' => 
-      array (
-      ),
-      'reference' => '8.x-1.0',
-    ),
     'drupal/dropzonejs' => 
     array (
       'pretty_version' => '2.5.0',
@@ -2407,7 +2398,7 @@
       'aliases' => 
       array (
       ),
-      'reference' => '11ac4bc4a7dc85d65a11da78cbdc0ddccfae171d',
+      'reference' => 'fb181bce9c126206eb904564a795200a8dbc2b7e',
     ),
     'pantheon-systems/quicksilver-pushback' => 
     array (
diff --git a/web/modules/draggableviews/LICENSE.txt b/web/modules/draggableviews/LICENSE.txt
deleted file mode 100644
index d159169d10..0000000000
--- a/web/modules/draggableviews/LICENSE.txt
+++ /dev/null
@@ -1,339 +0,0 @@
-                    GNU GENERAL PUBLIC LICENSE
-                       Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                            Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-                    GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-                            NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-                     END OF TERMS AND CONDITIONS
-
-            How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    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 2 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, write to the Free Software Foundation, Inc.,
-    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) year name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.
diff --git a/web/modules/draggableviews/draggableviews.info.yml b/web/modules/draggableviews/draggableviews.info.yml
deleted file mode 100644
index 1acec76690..0000000000
--- a/web/modules/draggableviews/draggableviews.info.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-name: DraggableViews
-type: module
-description: Complete rewrite of D7 draggableviews
-# core: 8.x
-dependencies:
-  - views
-
-# Information added by Drupal.org packaging script on 2016-10-21
-version: '8.x-1.0'
-core: '8.x'
-project: 'draggableviews'
-datestamp: 1477076053
diff --git a/web/modules/draggableviews/draggableviews.install b/web/modules/draggableviews/draggableviews.install
deleted file mode 100644
index 364c65a6d8..0000000000
--- a/web/modules/draggableviews/draggableviews.install
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-
-/**
- * @file
- * Install, update and uninstall functions for the draggableviews module.
- */
-
-/**
- * Implements hook_schema().
- */
-function draggableviews_schema() {
-  $schema['draggableviews_structure'] = array(
-    'description' => 'Table that contains logs of all system events.',
-    'fields' => array(
-      'dvid' => array(
-        'type' => 'serial',
-        'unsigned' => TRUE,
-        'not null' => TRUE,
-        'description' => 'The primary identifier.',
-      ),
-      'view_name' => array(
-        'type' => 'varchar',
-        'length' => 128,
-        'not null' => TRUE,
-        'default' => '',
-        'description' => 'Makes the order unique for each view.',
-      ),
-      'view_display' => array(
-        'type' => 'varchar',
-        'length' => 64,
-        'not null' => TRUE,
-        'default' => '',
-        'description' => 'Makes the order unique for each view display.',
-      ),
-      'args' => array(
-        'type' => 'varchar',
-        'length' => 255,
-        'not null' => FALSE,
-        'default' => '',
-        'description' => 'Makes the order unique for a given set of arguments',
-      ),
-      'entity_id' => array(
-        'type' => 'int',
-        'unsigned' => TRUE,
-        'not null' => TRUE,
-        'description' => 'Id of the entity that we are sorting (node, user, etc.).',
-      ),
-      'weight' => array(
-        'type' => 'int',
-        'unsigned' => FALSE,
-        'not null' => TRUE,
-        'default' => 0,
-        'description' => 'The order weight.',
-      ),
-      'parent' => array(
-        'type' => 'int',
-        'unsigned' => FALSE,
-        'not null' => TRUE,
-        'default' => 0,
-        'description' => 'The id of the parent.',
-      ),
-    ),
-    'indexes' => array(
-      'view' => array('view_name', 'view_display', 'args', 'entity_id'),
-      'weight' => array('weight'),
-      'entity_id' => array('entity_id'),
-    ),
-    'primary key' => array('dvid'),
-  );
-
-  return $schema;
-}
diff --git a/web/modules/draggableviews/draggableviews.module b/web/modules/draggableviews/draggableviews.module
deleted file mode 100644
index e2a08e1e5e..0000000000
--- a/web/modules/draggableviews/draggableviews.module
+++ /dev/null
@@ -1,187 +0,0 @@
-<?php
-
-/**
- * @file
- * Contains draggableviews.module.
- */
-
-/**
- * Implements hook_views_data_alter().
- */
-function draggableviews_views_data_alter(&$data) {
-  $data['draggableviews_structure']['weight'] = array(
-    'title' => t('DraggableViews Weight'),
-    'group' => t('Global'),
-    'help' => t('Display the weight value.'),
-    'field' => array(
-      'id' => 'numeric',
-    ),
-    'sort' => array(
-      'id' => 'standard',
-    ),
-    'filter' => array(
-      'help' => t('Filter by the draggableviews weight value (Native handler only).'),
-      'id' => 'numeric',
-    ),
-  );
-  $data['draggableviews_structure']['parent'] = array(
-    'title' => t('Parent'),
-    'help' => t('The parent entity id.'),
-    'group' => t('Draggableviews'),
-    'field' => array(
-      'id' => 'numeric',
-    ),
-    'filter' => array(
-      'help' => t('Filter by the draggableviews parent\'s entity id (Native handler only).'),
-      'id' => 'numeric',
-    ),
-  );
-
-  foreach (\Drupal::entityManager()->getDefinitions() as $entity_type_id => $entity_type) {
-    $base_table = $entity_type->getDataTable() ?: $entity_type->getBaseTable();
-    $entity_keys = $entity_type->getKeys();
-    if ($base_table && isset($data[$base_table]['table'])) {
-      $data[$base_table]['draggableviews'] = array(
-        'title' => $data[$base_table]['table']['group'],
-        'group' => t('Draggableviews'),
-        'help' => t('Provide a draggable functionality.'),
-        'entity field' => $entity_keys['id'],
-        'field' => array(
-          'id' => 'draggable_views_field',
-          'click sortable' => FALSE,
-        ),
-      );
-      // Explain to every entity how to join with draggableviews structure table.
-      $data['draggableviews_structure']['table']['join'][$base_table] = array(
-        'handler' => 'draggableviews_join_handler',
-        // Because this is a direct link it could be left out.
-        'left_table' => $base_table,
-        'left_field' => $entity_keys['id'],
-        'field' => 'entity_id',
-      );
-    }
-  }
-}
-
-/**
- * Implements hook_preprocess_views_view_table().
- */
-function draggableviews_preprocess_views_view_table(&$variables) {
-  $view = $variables['view'];
-  if (!isset($view->field['draggableviews'])) {
-    return;
-  }
-
-  $draggableviews = new \Drupal\draggableviews\DraggableViews($variables['view']);
-
-  // Add hierarchy.
-  foreach ($variables['rows'] as $key => $row) {
-    $title = $row['columns']['title']['content'][0]['field_output']['#markup'];
-    $indent = [
-      '#theme' => 'indentation',
-      '#size' => $draggableviews->getDepth($key),
-    ];
-    $variables['rows'][$key]['columns']['title']['content'][0]['field_output']['#markup'] = render($indent) . $title;
-  }
-
-  // Add table attributes.
-  $variables['attributes']['id'] = $draggableviews->getHtmlId();
-
-  // Add rows attributes.
-  foreach ($variables['rows'] as &$row) {
-    $row['attributes']->addClass('draggable');
-  }
-  unset($row);
-}
-
-/**
- * Implements hook_form_alter().
- */
-function draggableviews_form_alter(&$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id) {
-  // Filter the right form.
-  if (strpos($form_id, 'views_form_') === FALSE) {
-    return;
-  }
-
-  // Check whether the view is draggable.
-  $view = $form_state->getBuildInfo()['args'][0];
-  if (!isset($view->field['draggableviews'])) {
-    return;
-  }
-
-  // Remove default submit button.
-  $form['actions']['submit']['#access'] = FALSE;
-
-  if (\Drupal::currentUser()->hasPermission('access draggableviews')) {
-    // Create draggableviews save order button.
-    $form['actions']['save_order'] = array(
-      '#value' => t('Save order'),
-      '#type' => 'submit',
-    );
-  }
-
-  // If there is no results remove the save-order button.
-  if (!isset($form['draggableviews'][0])) {
-    $form['actions']['save_order']['#access'] = FALSE;
-    return;
-  }
-
-  $form['actions']['save_order']['#submit'][] = 'draggableviews_views_submit';
-}
-
-/**
- * Submit handler.
- */
-function draggableviews_views_submit(&$form, \Drupal\Core\Form\FormStateInterface $form_state) {
-  $input = $form_state->getUserInput();
-
-  /** @var \Drupal\views\ViewExecutable $view */
-  $view = $form_state->getBuildInfo()['args'][0];
-  $view_name = $view->id();
-  $view_display = $view->current_display;
-
-  $weight = 0;
-
-  $connection = \Drupal\Core\Database\Database::getConnection();
-  $transaction = $connection->startTransaction();
-  try {
-    foreach ($input['draggableviews'] as $item) {
-      // Remove old data.
-      $connection->delete('draggableviews_structure')
-        ->condition('view_name', $view_name)
-        ->condition('view_display', $view_display)
-        ->condition('entity_id', $item['id'])
-        ->execute();
-
-      // Add new data.
-      $record = [
-        'view_name' => $view_name,
-        'view_display' => $view_display,
-        'args' => '[]',
-        'entity_id' => $item['id'],
-        'weight' => $weight,
-      ];
-      // Save parent if exists.
-      if (isset($item['parent'])) {
-        $record['parent'] = $item['parent'];
-      }
-      $connection->insert('draggableviews_structure')->fields($record)->execute();
-      $weight++;
-    }
-    // We invalidate the entity list cache, so other views are also aware of the
-    // cache.
-    $views_entity_table_info = $view->query->getEntityTableInfo();
-    // Find the entity type used by the view.
-    $result = array_keys(array_filter($views_entity_table_info, function($info) {
-      return $info['relationship_id'] == 'none';
-    }));
-    $entity_type_id = reset($result);
-    $list_cache_tags = \Drupal::entityTypeManager()->getDefinition($entity_type_id)->getListCacheTags();
-    \Drupal\Core\Cache\Cache::invalidateTags($list_cache_tags);
-  }
-  catch (\Exception $e) {
-    $transaction->rollback();
-    \Drupal::logger('draggableviews')->error('Failed with @message', ['@message' => $e->getMessage()]);
-    drupal_set_message(t('There was an error while saving the data. Please, try gain.'), 'warning');
-  }
-}
diff --git a/web/modules/draggableviews/draggableviews.permissions.yml b/web/modules/draggableviews/draggableviews.permissions.yml
deleted file mode 100644
index 7a1a06f09d..0000000000
--- a/web/modules/draggableviews/draggableviews.permissions.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-access draggableviews:
-  title: 'Access Draggableviews'
-  description: 'Give users a permission to sort draggableviews.'
-  restrict access: true
diff --git a/web/modules/draggableviews/src/DraggableViews.php b/web/modules/draggableviews/src/DraggableViews.php
deleted file mode 100644
index da5e99dcb4..0000000000
--- a/web/modules/draggableviews/src/DraggableViews.php
+++ /dev/null
@@ -1,88 +0,0 @@
-<?php
-
-/**
- * @file
- * Contains \Drupal\draggableviews\DraggableViews class.
- */
-
-namespace Drupal\draggableviews;
-
-use Drupal\views\ViewExecutable;
-use Drupal\Component\Utility\Html;
-
-/**
- * Class DraggableViews.
- */
-class DraggableViews {
-
-  /**
-   * The view.
-   *
-   * @var \Drupal\views\ViewExecutable $view
-   */
-  public $view;
-
-  /**
-   * Constructs DraggableViewsRows object.
-   *
-   * @param \Drupal\views\ViewExecutable $view
-   *   Views object.
-   */
-  public function __construct(ViewExecutable $view) {
-    $this->view = $view;
-  }
-
-  /**
-   * Get index by name and id.
-   */
-  public function getIndex($name, $id) {
-    foreach ($this->view->result as $item) {
-      if ($item->$name == $id) {
-        return $item->index;
-      }
-    }
-    return FALSE;
-  }
-
-  /**
-   * Get depth by index.
-   */
-  public function getDepth($index) {
-    if (!isset($this->view->result[$index])) {
-      return FALSE;
-    }
-    $row = $this->view->result[$index];
-    // If parent is available, set parent's depth +1.
-    return (!empty($row->draggableviews_structure_parent)) ? $this->getDepth($this->getIndex('nid', $row->draggableviews_structure_parent)) + 1 : 0;
-  }
-
-  /**
-   * Get parent by index.
-   */
-  public function getParent($index) {
-    return isset($this->view->result[$index]->draggableviews_structure_parent) ? $this->view->result[$index]->draggableviews_structure_parent : 0;
-  }
-
-  /**
-   * Get ancestor by index.
-   */
-  public function getAncestor($index) {
-    $row = $this->view->result[$index];
-    return !empty($row->draggableviews_structure_parent) ? $this->getAncestor($this->getIndex('nid', $row->draggableviews_structure_parent)) : $index;
-  }
-
-  /**
-   * Return value by it's name and index.
-   */
-  public function getValue($name, $index) {
-    return $this->view->result[$index]->$name;
-  }
-
-  /**
-   * Get HTML id for draggableviews table.
-   */
-  public function getHtmlId() {
-    return Html::getId('draggableviews-table-' . $this->view->id() . '-' . $this->view->current_display);
-  }
-
-}
diff --git a/web/modules/draggableviews/src/Plugin/migrate/destination/DraggableViews.php b/web/modules/draggableviews/src/Plugin/migrate/destination/DraggableViews.php
deleted file mode 100644
index 92f5e9f04a..0000000000
--- a/web/modules/draggableviews/src/Plugin/migrate/destination/DraggableViews.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-
-/**
- * @file
- * Contains destination plugin for Draggable Views database table.
- */
-
-namespace Drupal\draggableviews\Plugin\migrate\destination;
-
-use Drupal\Core\Database\Database;
-use Drupal\migrate\Entity\MigrationInterface;
-use Drupal\migrate\Plugin\migrate\destination\DestinationBase;
-use Drupal\migrate\Row;
-
-/**
- * Defines destination plugin for Draggableviews.
- *
- * @MigrateDestination(
- *   id = "draggableviews"
- * )
- */
-class DraggableViews extends DestinationBase {
-
-  /**
-   * Constructs an entity destination plugin.
-   *
-   * @param array $configuration
-   *   A configuration array containing information about the plugin instance.
-   * @param string $plugin_id
-   *   The plugin_id for the plugin instance.
-   * @param mixed $plugin_definition
-   *   The plugin implementation definition.
-   * @param MigrationInterface $migration
-   *   The migration.
-   */
-  public function __construct(array $configuration, $plugin_id, $plugin_definition, MigrationInterface $migration) {
-    parent::__construct($configuration, $plugin_id, $plugin_definition, $migration);
-  }
-
-  /**
-   * {@inheritdoc}
-   */
-  public function import(Row $row, array $old_destination_id_values = []) {
-    $record = [
-      'view_name' => $row->getDestinationProperty('view_name'),
-      'view_display' => $row->getDestinationProperty('view_display'),
-      'args' => $row->getDestinationProperty('args'),
-      'entity_id' => $row->getDestinationProperty('entity_id'),
-      'weight' => $row->getDestinationProperty('weight'),
-      'parent' => $row->getDestinationProperty('parent'),
-    ];
-    $result = Database::getConnection()->insert('draggableviews_structure')->fields($record)->execute();
-    return array($result);
-  }
-
-  /**
-   * {@inheritdoc}
-   */
-  public function getIds() {
-    return [
-      'dvid' => [
-        'type' => 'integer',
-      ],
-    ];
-  }
-
-  /**
-   * {@inheritdoc}
-   */
-  public function fields(MigrationInterface $migration = NULL) {
-    return [
-      'dvid' => $this->t('The primarty identifier'),
-      'view_name' => $this->t('The view name.'),
-      'view_display' => $this->t('The view display.'),
-      'args' => $this->t('The arguments.'),
-      'entity_id' => $this->t('The entity id.'),
-      'weight' => $this->t('The order weight.'),
-      'parent' => $this->t('The parent entity id.'),
-    ];
-  }
-
-}
diff --git a/web/modules/draggableviews/src/Plugin/views/field/DraggableViewsField.php b/web/modules/draggableviews/src/Plugin/views/field/DraggableViewsField.php
deleted file mode 100644
index bfade16949..0000000000
--- a/web/modules/draggableviews/src/Plugin/views/field/DraggableViewsField.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-
-/**
- * @file
- * Contains \Drupal\draggableviews\Plugin\views\field\DraggableViewsField.
- */
-
-namespace Drupal\draggableviews\Plugin\views\field;
-
-use Drupal\Core\Form\FormStateInterface;
-use Drupal\draggableviews\DraggableViews;
-use Drupal\system\Plugin\views\field\BulkForm;
-use Drupal\Core\Render\Markup;
-
-/**
- * Defines a draggableviews form element.
- *
- * @ViewsField("draggable_views_field")
- */
-class DraggableViewsField extends BulkForm {
-
-  /**
-   * {@inheritdoc}
-   */
-  protected function defineOptions() {
-    $options = parent::defineOptions();
-    return $options;
-  }
-
-  /**
-   * {@inheritdoc}
-   */
-  public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    parent::buildOptionsForm($form, $form_state);
-  }
-
-  /**
-   * {@inheritdoc}
-   */
-  // @codingStandardsIgnoreStart
-  public function render_item($count, $item) {
-    // @codingStandardsIgnoreEnd
-    // Using internal method. @todo Reckeck after drupal stable release.
-    return Markup::create('<!--form-item-' . $this->options['id'] . '--' . $this->view->row_index . '-->');
-  }
-
-  /**
-   * {@inheritdoc}
-   */
-  public function viewsForm(&$form, FormStateInterface $form_state) {
-    $form[$this->options['id']] = [
-      '#tree' => TRUE,
-    ];
-
-    $draggableviews = new DraggableViews($this->view);
-
-    foreach ($this->view->result as $row_index => $row) {
-      $form[$this->options['id']][$row_index] = array(
-        '#tree' => TRUE,
-      );
-
-      // Item to keep id of the entity.
-      $form[$this->options['id']][$row_index]['id'] = array(
-        '#type' => 'hidden',
-        '#value' => $row->{$this->definition['entity field']},
-        '#attributes' => array('class' => 'draggableviews-id'),
-      );
-
-      // Add parent.
-      $form[$this->options['id']][$row_index]['parent'] = array(
-        '#type' => 'hidden',
-        '#default_value' => $draggableviews->getParent($row_index),
-        '#attributes' => array('class' => 'draggableviews-parent'),
-      );
-    }
-
-    if (\Drupal::currentUser()->hasPermission('access draggableviews')) {
-      $options = [
-        'table_id' => $draggableviews->getHtmlId(),
-        'action' => 'match',
-        'relationship' => 'parent',
-        'group' => 'draggableviews-parent',
-        'subgroup' => 'draggableviews-parent',
-        'source' => 'draggableviews-id'
-      ];
-      drupal_attach_tabledrag($form, $options);
-    }
-  }
-
-}
-- 
GitLab