From b5429f66331f31a97e26f84c679e3b282114bea4 Mon Sep 17 00:00:00 2001 From: Chris Gross <gross.364@osu.edu> Date: Thu, 1 Oct 2015 14:04:40 -0400 Subject: [PATCH] daily build --- profiles/wcm_base/CHANGELOG.txt | 11 + .../modules/contrib/textformatter/LICENSE.txt | 339 +++++++++++ .../modules/contrib/textformatter/README.txt | 34 ++ .../textformatter/textformatter.api.php | 51 ++ .../contrib/textformatter/textformatter.info | 13 + .../textformatter/textformatter.module | 538 ++++++++++++++++++ .../textformatter_contrib.info | 12 + .../textformatter_contrib.module | 214 +++++++ .../ocio_landing_page.strongarm.inc | 14 +- ...ocio_media.features.features_overrides.inc | 49 ++ .../custom/ocio_media/ocio_media.features.inc | 55 ++ .../modules/custom/ocio_media/ocio_media.info | 3 + .../modules/custom/ocio_news/ocio_news.info | 2 + .../ocio_news/ocio_news.views_default.inc | 2 + ...s_settings.features.features_overrides.inc | 12 +- .../ocio_panels_settings.features.inc | 12 +- .../ocio_taxonomy.features.field_base.inc | 34 +- .../ocio_taxonomy.features.field_instance.inc | 240 ++++++++ .../ocio_taxonomy.features.taxonomy.inc | 10 +- .../custom/ocio_taxonomy/ocio_taxonomy.info | 7 +- ..._workbench.features.features_overrides.inc | 3 - .../ocio_workbench.features.inc | 9 - .../custom/ocio_workbench/ocio_workbench.info | 4 - .../ocio_workbench.views_default.inc | 20 + .../ocio_wysiwyg.features.wysiwyg.inc | 1 + .../css/ocio-omega-base.no-query.css | 19 +- .../css/ocio-omega-base.styles.css | 19 +- .../sass/components/views/_news.scss | 20 +- profiles/wcm_base/wcm_base.info | 1 + profiles/wcm_base/wcm_base.make | 3 + 30 files changed, 1685 insertions(+), 66 deletions(-) create mode 100644 profiles/wcm_base/modules/contrib/textformatter/LICENSE.txt create mode 100755 profiles/wcm_base/modules/contrib/textformatter/README.txt create mode 100755 profiles/wcm_base/modules/contrib/textformatter/textformatter.api.php create mode 100644 profiles/wcm_base/modules/contrib/textformatter/textformatter.info create mode 100755 profiles/wcm_base/modules/contrib/textformatter/textformatter.module create mode 100644 profiles/wcm_base/modules/contrib/textformatter/textformatter_contrib/textformatter_contrib.info create mode 100644 profiles/wcm_base/modules/contrib/textformatter/textformatter_contrib/textformatter_contrib.module diff --git a/profiles/wcm_base/CHANGELOG.txt b/profiles/wcm_base/CHANGELOG.txt index 6be7f99d..ae2bebc0 100644 --- a/profiles/wcm_base/CHANGELOG.txt +++ b/profiles/wcm_base/CHANGELOG.txt @@ -1,3 +1,14 @@ +WCM Base 7.x-1.x, 2015-10-1 +---------------------------- +- OCIO Landing Page: + - Added news archive trio pane to allowed panes. + - Decoupled panels settings from defaults. +- OCIO Media, OCIO Taxonomy, OCIO Workbench: Added file tagging support. +- OCIO News: Changed display order of news articles to descending. +- OCIO Omega Base: Reconfigured trio pane style, fixed more-link from floating to the left. +- OCIO WYSIWYG: Added anchor plugin. +- Text List Formatter: Added contrib module to allow formatting text list fields. + WCM Base 7.x-1.x, 2015-09-24 ---------------------------- - OCIO Omega Base: diff --git a/profiles/wcm_base/modules/contrib/textformatter/LICENSE.txt b/profiles/wcm_base/modules/contrib/textformatter/LICENSE.txt new file mode 100644 index 00000000..d159169d --- /dev/null +++ b/profiles/wcm_base/modules/contrib/textformatter/LICENSE.txt @@ -0,0 +1,339 @@ + 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/profiles/wcm_base/modules/contrib/textformatter/README.txt b/profiles/wcm_base/modules/contrib/textformatter/README.txt new file mode 100755 index 00000000..ed5429ed --- /dev/null +++ b/profiles/wcm_base/modules/contrib/textformatter/README.txt @@ -0,0 +1,34 @@ +ABOUT + +This module provides an additional formatter to render values in all +core fields as HTML or comma-separated lists. + +For multi-value fields, each field value becomes a list item. For long text +fields, each line becomes a list item. + +Textformatter also provides hooks (see textformatter.api.php) so that other +modules can register and implement listings for their field data. The +textformatter_contrib module provides some implementations. This is bundled +with this module. Currently entityreference, node reference, and link fields +are supported. + +REQUIREMENTS + +- Drupal 7.x +- Drupal core's Field module + +CONFIGURATION + +There is no special configuration for this module. You may configure it just as +you would any other field formatter on the "Manage display" tab. + +AUTHOR AND CREDIT + +This module was developed for Drupal 6 by: +Larry Garfield & Emily Brand +http://www.palantir.net/ + +The Drupal 7 version initiated and maintained by: +Damian Lee + +This module was initially developed by Palantir.net. diff --git a/profiles/wcm_base/modules/contrib/textformatter/textformatter.api.php b/profiles/wcm_base/modules/contrib/textformatter/textformatter.api.php new file mode 100755 index 00000000..03ec38e7 --- /dev/null +++ b/profiles/wcm_base/modules/contrib/textformatter/textformatter.api.php @@ -0,0 +1,51 @@ +<?php + +/** + * hook_textformatter_field_list_info(). + * + * Declare new field types/callbacks that are available as text formatter lists. + */ +function hook_textformatter_field_info() { + $info = array(); + + $info['example'] = array( // key array with module name. + 'fields' => array('example', 'example_other'), // This must be an array. + // Callback to process $items from hook_field_formatter_view. + 'callback' => 'textformatter_example_field_create_list', + ); + + return $info; +} + +/** + * Sample callback implementation. + * @see textformatter_default_field_create_list. + */ +function textformatter_example_field_create_list($entity_type, $entity, $field, $instance, $langcode, $items, $display) { + $list_items = array(); + + foreach ($items as $delta => $item) { + $list_items[$delta] = check_plain($item['value']); + } + + return $list_items; +} + +/** + * hook_textformatter_field_list_info_alter(). + * + * @param $info + * An array of info as declared by hook_textformatter_field_list_info() to alter + * passed by reference. + */ +function hook_textformatter_field_info_alter(&$info) { + // Change the callback used for fields from the text module. + $info['text']['callback'] = 'textformatter_example_text_callback'; +} + +/** + * hook_textformatter_field_formatter_settings_form_alter(). + */ +function hook_textformatter_field_formatter_settings_form_alter(&$form, &$form_state, $context) { + // Sample form element here. +} diff --git a/profiles/wcm_base/modules/contrib/textformatter/textformatter.info b/profiles/wcm_base/modules/contrib/textformatter/textformatter.info new file mode 100644 index 00000000..7a6212a3 --- /dev/null +++ b/profiles/wcm_base/modules/contrib/textformatter/textformatter.info @@ -0,0 +1,13 @@ +name = Text formatter +description = "A field formatter for rendering values as HTML or comma-separated lists." +core = 7.x +package = Fields + +dependencies[] = field + +; Information added by drupal.org packaging script on 2012-06-09 +version = "7.x-1.3" +core = "7.x" +project = "textformatter" +datestamp = "1339240633" + diff --git a/profiles/wcm_base/modules/contrib/textformatter/textformatter.module b/profiles/wcm_base/modules/contrib/textformatter/textformatter.module new file mode 100755 index 00000000..b790b096 --- /dev/null +++ b/profiles/wcm_base/modules/contrib/textformatter/textformatter.module @@ -0,0 +1,538 @@ +<?php + +/** + * @file + * Provide a field formatter to render values as HTML or comma-separated lists. + */ + +/** + * Implements hook_help(). + */ +function textformatter_help($path, $arg) { + switch ($path) { + case 'admin/help#textformatter' : + $output = '<p>' . t("The text formatter module provides a new display formatter that can + be used on any text, number, list, or taxonomy fields.") . '</p>'; + $output .= '<p>' . t("Go to 'Manage display' for your entity field display settings and + select 'List' as the formatter. Various options will then be available to either format + your field values as an html list or comma separated list.") . '</p>'; + $output .= '<p>' . t("This would be mostly implemented with multi value fields. + E.g. A text field could be created with unlimited values. Each value will then be added to + the same html list. Taxonomy terms will work with comma separated auto complete lists too, + to give the same result. The only exceptions are textarea field, lists can be created based + on each line of the input.") . '</p>'; + + return $output; + } + +} + +/** + * Implements hook_field_formatter_info(). + */ +function textformatter_field_formatter_info() { + return array( + 'textformatter_list' => array( + 'label' => t("List"), + 'field types' => _textformatter_field_types(), + 'settings' => array( + 'textformatter_type' => 'ul', + 'textformatter_class' => 'textformatter-list', + 'textformatter_comma_full_stop' => 0, + 'textformatter_comma_and' => 0, + 'textformatter_comma_tag' => 'div', + 'textformatter_term_plain' => 0, + 'textformatter_comma_override' => 0, + 'textformatter_separator_custom' => '', + 'textformatter_separator_custom_tag' => 'span', + 'textformatter_separator_custom_class' => 'textformatter-separator', + 'textformatter_contrib' => array(), + ), + ), + ); +} + +/** + * Implements hook_field_formatter_Settings_form(). + */ +function textformatter_field_formatter_settings_form($field, $instance, $view_mode, $form, &$form_state) { + $display = $instance['display'][$view_mode]; + $settings = $display['settings']; + $form = array(); + + if ($display['type'] == 'textformatter_list') { + $form['textformatter_type'] = array( + '#title' => t("List type"), + '#type' => 'select', + '#options' => array( + 'ul' => t("Unordered HTML list (ul)"), + 'ol' => t("Ordered HTML list (ol)"), + 'comma' => t("Comma separated list"), + ), + '#default_value' => $settings['textformatter_type'], + '#required' => TRUE, + ); + $form['textformatter_comma_and'] = array( + '#type' => 'checkbox', + '#title' => t("Include 'and' before the last item"), + '#default_value' => $settings['textformatter_comma_and'], + '#states' => array( + 'visible' => array( + ':input[name="fields[' . $field['field_name'] . '][settings_edit_form][settings][textformatter_type]"]' => array('value' => 'comma'), + ':input[name="fields[' . $field['field_name'] . '][settings_edit_form][settings][textformatter_comma_override]"]' => array('checked' => FALSE), + ), + ), + ); + $form['textformatter_comma_full_stop'] = array( + '#type' => 'checkbox', + '#title' => t("Append comma separated list with '.'"), + '#default_value' => $settings['textformatter_comma_full_stop'], + '#states' => array( + 'visible' => array( + ':input[name="fields[' . $field['field_name'] . '][settings_edit_form][settings][textformatter_type]"]' => array('value' => 'comma'), + ':input[name="fields[' . $field['field_name'] . '][settings_edit_form][settings][textformatter_comma_override]"]' => array('checked' => FALSE), + ), + ), + ); + + //Override Comma with custom separator. + $form['textformatter_comma_override'] = array( + '#type' => 'checkbox', + '#title' => t("Override comma separator"), + '#description' => t("Override the default comma separator with a custom separator string."), + '#default_value' => $settings['textformatter_comma_override'], + '#states' => array( + 'visible' => array( + ':input[name="fields[' . $field['field_name'] . '][settings_edit_form][settings][textformatter_type]"]' => array('value' => 'comma'), + ), + ), + ); + $form['textformatter_separator_custom'] = array( + '#type' => 'textfield', + '#title' => t("Custom separator"), + '#description' => t("Override default comma separator with a custom separator string. + You must add your own spaces in this string if you want them. E.g. ' + ', or ' => '"), + '#size' => 40, + '#default_value' => $settings['textformatter_separator_custom'], + '#states' => array( + 'visible' => array( + ':input[name="fields[' . $field['field_name'] . '][settings_edit_form][settings][textformatter_comma_override]"]' => array('checked' => TRUE), + ), + ), + ); + $form['textformatter_separator_custom_tag'] = array( + '#type' => 'select', + '#title' => t("separator HTML wrapper"), + '#description' => t("An HTML tag to wrap the separator in."), + '#options' => _textformatter_wrapper_options(), + '#default_value' => $settings['textformatter_separator_custom_tag'], + '#states' => array( + 'visible' => array( + ':input[name="fields[' . $field['field_name'] . '][settings_edit_form][settings][textformatter_comma_override]"]' => array('checked' => TRUE), + ), + ), + ); + $form['textformatter_separator_custom_class'] = array( + '#title' => t("Separator classes"), + '#type' => 'textfield', + '#description' => t("A CSS class to use in the wrapper tag for the separator."), + '#default_value' => $settings['textformatter_separator_custom_class'], + '#element_validate' => array('_textformatter_validate_class'), + '#states' => array( + 'visible' => array( + ':input[name="fields[' . $field['field_name'] . '][settings_edit_form][settings][textformatter_comma_override]"]' => array('checked' => TRUE), + ), + ), + ); + + $form['textformatter_comma_tag'] = array( + '#type' => 'select', + '#title' => t("HTML wrapper"), + '#description' => t("An HTML tag to wrap the list in. The CSS class below will be added to this tag."), + '#options' => _textformatter_wrapper_options(), + '#default_value' => $settings['textformatter_comma_tag'], + '#states' => array( + 'visible' => array( + ':input[name="fields[' . $field['field_name'] . '][settings_edit_form][settings][textformatter_type]"]' => array('value' => 'comma'), + ), + ), + ); + $form['textformatter_class'] = array( + '#title' => t("List classes"), + '#type' => 'textfield', + '#size' => 40, + '#description' => t("A CSS class to use in the markup for the field list."), + '#default_value' => $settings['textformatter_class'], + '#required' => FALSE, + '#element_validate' => array('_textformatter_validate_class'), + ); + } + + // Taxonomy term ref fields only. + if ($field['type'] == 'taxonomy_term_reference') { + $form['textformatter_term_plain'] = array( + '#type' => 'checkbox', + '#title' => t("Display taxonomy terms as plain text (Not term links)."), + '#default_value' => $settings['textformatter_term_plain'], + ); + } + + $context = array( + 'field' => $field, + 'instance' => $instance, + 'view_mode' => $view_mode + ); + drupal_alter('textformatter_field_formatter_settings_form', $form, $form_state, $context); + + return $form; +} + +/** + * Validate that a space-separated list of values are lowercase and appropriate + * for use as HTML classes. + * + * @see textformatter_field_formatter_settings_form() + */ +function _textformatter_validate_class($element, &$form_state) { + $value = drupal_array_get_nested_value($form_state['values'], $element['#parents']); + $classes = explode(' ', $value); + foreach ($classes as $class) { + if ($class != drupal_html_class($class)) { + form_error($element, t('List classes contain illegal characters; classes should be lowercase and may contain letters, numbers, and dashes.')); + return; + } + } +} + +/** + * Implements hook_field_formatter_settings_summary(). + */ +function textformatter_field_formatter_settings_summary($field, $instance, $view_mode) { + $display = $instance['display'][$view_mode]; + $settings = $display['settings']; + + $summary = array(); + + if ($display['type'] == 'textformatter_list') { + switch ($settings['textformatter_type']) { + case 'ul': + $summary[] = t("Unordered HTML list"); + break; + case 'ol': + $summary[] = t("Ordered HTML list"); + break; + case 'comma': + $summary[] = t("Comma separated list"); + break; + } + + if ($settings['textformatter_class']) { + $summary[] = t("CSS Class") . ': <em>' . check_plain($settings['textformatter_class']) . '</em>'; + } + if ($settings['textformatter_comma_override']) { + $summary[] = '<em>*' . t("Comma separator overridden") . '*</em>'; + } + $summary = theme('item_list', array('type' => 'ul', 'items' => $summary)); + } + + return $summary; +} + +/** + * Implements hook_field_formatter_view(). + */ +function textformatter_field_formatter_view($entity_type, $entity, $field, $instance, $langcode, $items, $display) { + if ($display['type'] == 'textformatter_list') { + $textformatters = textformatter_field_list_info(); + $settings = $display['settings']; + $module = $field['module']; + $element = $list_items = array(); + + if (isset($textformatters[$module]) && in_array($field['type'], $textformatters[$module]['fields'])) { + $function = $textformatters[$module]['callback']; + if (function_exists($function)) { + $list_items = $function($entity_type, $entity, $field, $instance, $langcode, $items, $display); + } + } + else { + foreach ($items as $delta => $item) { + $list_items = textformatter_default_field_create_list($entity_type, $entity, $field, $instance, $langcode, $items, $display); + } + } + + // If there are no list items, return and render nothing. + if (empty($list_items)) { + return; + } + + // CSS classes are checked for validity on submission. drupal_attributes() + // runs each attribute value through check_plain(). + $classes = explode(' ', $settings['textformatter_class']); + + switch ($settings['textformatter_type']) { + case 'ul': + case 'ol': + // Render elements as one piece of markup and theme as item list. + $element[0] = array( + '#theme' => 'item_list', + '#type' => $settings['textformatter_type'], + '#items' => $list_items, + '#attributes' => array( + 'class' => $classes, + ), + ); + break; + case 'comma': + // Render as one element as comma separated list. + $element[0] = array( + '#theme' => 'textformatter_comma', + '#items' => $list_items, + '#settings' => $settings, + '#attributes' => array( + 'class' => $classes, + ), + ); + break; + } + } + + return $element; +} + +/** + * Implements hook_theme(). + */ +function textformatter_theme($existing, $type, $theme, $path) { + return array( + 'textformatter_comma' => array( + 'render element' => 'element', + ), + ); +} + +/** + * Theme function to render comma separated lists. + */ +function theme_textformatter_comma($variables) { + $items = $variables['element']['#items']; + $settings = $variables['element']['#settings']; + $attributes = drupal_attributes($variables['element']['#attributes']); + + // Optionally prefix the last item with 'and'. + $last = ''; + if ($settings['textformatter_comma_and'] && (count($items) > 1) && !$settings['textformatter_comma_override']) { + $last = ' ' . t('and') . ' ' . array_pop($items); + } + + // Default comma separator. + $separator = ', '; + //Override if we need to. + if ($settings['textformatter_comma_override']) { + $sep = check_plain($settings['textformatter_separator_custom']); + $tag = $settings['textformatter_separator_custom_tag']; + if ($tag) { + $class = $settings['textformatter_separator_custom_class']; + $separator = "<$tag class=\"$class\">$sep</$tag>"; + } + } + // Generate a comma-separated list. + $output = implode($separator, $items) . $last; + + // Optionally follow the list with a '.'. + if ($settings['textformatter_comma_full_stop']) { + $output .= '<span class="textformatter-fullstop">.</span>'; + } + + // Optionally wrap the list in an HTML tag. + $tag = $settings['textformatter_comma_tag']; + if ($tag) { + $output = "<$tag$attributes>$output</$tag>"; + } + + return $output; +} + +/** + * Wrapper function for invoking hook_textformatter_field_list_info. + * + * Statically caches $info as this could get called multiple times + * for different fields using this formatter in a request. + */ +function textformatter_field_list_info() { + $info = &drupal_static(__FUNCTION__); + + if (empty($info)) { + $info = module_invoke_all('textformatter_field_info'); + drupal_alter('textformatter_field_info', $info); + } + + return $info; +} + +/** + * Implements hook_textformatter_field_info(). + */ +function textformatter_textformatter_field_info() { + $info = array(); + + $info['text'] = array( + 'fields' => array('text', 'text_long'), + 'callback' => 'textformatter_text_field_create_list', + ); + $info['number'] = array( + 'fields' => array('number_integer', 'number_decimal', 'number_float'), + 'callback' => 'textformatter_default_field_create_list', + ); + $info['list'] = array( + 'fields' => array('list_float', 'list_integer', 'list_text'), + 'callback' => 'textformatter_list_field_create_list', + ); + $info['taxonomy'] = array( + 'fields' => array('taxonomy_term_reference'), + 'callback' => 'textformatter_taxonomy_field_create_list', + ); + + return $info; +} + +/** + * Default listing callback. + */ +function textformatter_default_field_create_list($entity_type, $entity, $field, $instance, $langcode, $items, $display) { + $list_items = array(); + + // Use our helper function to get the value key dynamically. + $value_key = _textformatter_get_field_value_key($field); + + foreach ($items as $delta => $item) { + $list_items[$delta] = check_plain($item[$value_key]); + } + + return $list_items; +} + +/** + * Create list for text fields. + */ +function textformatter_text_field_create_list($entity_type, $entity, $field, $instance, $langcode, $items, $display) { + $settings = $display['settings']; + $list_items = array(); + + if ($field['type'] == 'text_long') { + foreach ($items as $delta => $item) { + // Explode on new line char, trim whitespace (if any), then array filter (So any empty lines will actually be removed). + $long_text_items = array_filter(array_map('trim', explode("\n", $item['value']))); + foreach ($long_text_items as $long_text_item) { + // @see _text_sanitize(), text.module + $list_items[] = ($instance['settings']['text_processing'] ? check_markup($long_text_item, $item['format'], $langcode) : field_filter_xss($long_text_item)); + } + } + } + else { + foreach ($items as $delta => $item) { + $list_items[] = ($item['format'] ? check_markup($item['value'], $item['format'], $langcode) : field_filter_xss($item['value'])); + } + } + + return $list_items; +} + +/** + * Create list for list fields. + */ +function textformatter_list_field_create_list($entity_type, $entity, $field, $instance, $langcode, $items, $display) { + $settings = $display['settings']; + $list_items = array(); + + // Get allowed values for the field. + $allowed_values = list_allowed_values($field); + foreach ($items as $delta => $item) { + if (isset($allowed_values[$item['value']])) { + $list_items[$delta] = field_filter_xss($allowed_values[$item['value']]); + } + } + + return $list_items; +} + +/** + * Create list for taxonomy reference fields. + */ +function textformatter_taxonomy_field_create_list($entity_type, $entity, $field, $instance, $langcode, $items, $display) { + $settings = $display['settings']; + $list_items = $tids = array(); + + // Get an array of tids only. + foreach ($items as $item) { + $tids[] = $item['tid']; + } + + $terms = taxonomy_term_load_multiple($tids); + + foreach ($items as $delta => $item) { + // Use the item name if autocreating, as there won't be a term object yet. + $term_name = ($item['tid'] === 'autocreate') ? $item['name'] : $terms[$item['tid']]->name; + // Check if we should display as term links or not. + if ($settings['textformatter_term_plain'] || ($item['tid'] === 'autocreate')) { + $list_items[$delta] = check_plain($term_name); + } + else { + $uri = entity_uri('taxonomy_term', $terms[$item['tid']]); + $list_items[$delta] = l($term_name, $uri['path']); + } + } + + return $list_items; +} + +/** + * Helper to return array of field types that textformatter display formatter can be used on. + */ +function _textformatter_field_types() { + // Invokes hook_textformatter_field_info + $textformatter_info = textformatter_field_list_info(); + $fields = array(); + + // Create array of all field types. + foreach ($textformatter_info as $module => $info) { + foreach ($info['fields'] as $field) { + $fields[] = $field; + } + } + + return $fields; +} + +/** + * Helper to return the value key for a field instance. + * + * @param $field + * The whole array of field instance info provided by the field api. + * + * @return + * (string) value key for the field. + */ +function _textformatter_get_field_value_key(array $field) { + return (array_key_exists('columns', $field) && is_array($field['columns'])) ? key($field['columns']) : 'value'; +} + +/** + * Helper to return an array of html tags, formatted for a select list. + * + * @return + * Array of available html tags. + */ +function _textformatter_wrapper_options() { + return array( + t("No HTML tag"), + 'div' => t("Div"), + 'span' => t("Span"), + 'p' => t("Paragraph"), + 'h1' => t("Header 1"), + 'h2' => t("Header 2"), + 'h3' => t("Header 3"), + 'h4' => t("Header 4"), + 'h5' => t("Header 5"), + 'h6' => t("Header 6"), + ); +} diff --git a/profiles/wcm_base/modules/contrib/textformatter/textformatter_contrib/textformatter_contrib.info b/profiles/wcm_base/modules/contrib/textformatter/textformatter_contrib/textformatter_contrib.info new file mode 100644 index 00000000..1136f1f6 --- /dev/null +++ b/profiles/wcm_base/modules/contrib/textformatter/textformatter_contrib/textformatter_contrib.info @@ -0,0 +1,12 @@ +name = Text formatter contrib +description = "Textformatter support for contributed modules." +core = 7.x +package = Fields + +dependencies[] = textformatter +; Information added by drupal.org packaging script on 2012-06-09 +version = "7.x-1.3" +core = "7.x" +project = "textformatter" +datestamp = "1339240633" + diff --git a/profiles/wcm_base/modules/contrib/textformatter/textformatter_contrib/textformatter_contrib.module b/profiles/wcm_base/modules/contrib/textformatter/textformatter_contrib/textformatter_contrib.module new file mode 100644 index 00000000..cc113d9e --- /dev/null +++ b/profiles/wcm_base/modules/contrib/textformatter/textformatter_contrib/textformatter_contrib.module @@ -0,0 +1,214 @@ +<?php + +/** + * @file + * Textformatter support for contributed module fields. + */ + +/** + * Implements hook_textformatter_field_info(). + */ +function textformatter_contrib_textformatter_field_info() { + $info = array(); + + if (module_exists('entityreference')) { + $info['entityreference'] = array( + 'fields' => array('entityreference'), + 'callback' => 'textformatter_contrib_entityreference_field_create_list', + ); + } + + if (module_exists('node_reference')) { + $info['node_reference'] = array( + 'fields' => array('node_reference'), + 'callback' => 'textformatter_contrib_node_reference_field_create_list', + ); + } + + if (module_exists('user_reference')) { + $info['user_reference'] = array( + 'fields' => array('user_reference'), + 'callback' => 'textformatter_contrib_user_reference_field_create_list', + ); + } + + if (module_exists('link')) { + $info['link'] = array( + 'fields' => array('link_field'), + 'callback' => 'textformatter_contrib_link_field_create_list', + ); + } + + return $info; +} + +/** + * Entity reference field listing callback. + */ +function textformatter_contrib_entityreference_field_create_list($entity_type, $entity, $field, $instance, $langcode, $items, $display) { + // Load the target type for the field instance. + $target_type = $field['settings']['target_type']; + $contrib_settings = $display['settings']['textformatter_contrib']; + $list_items = $target_ids = $target_entities = array(); + + // Get an array of entity ids. + foreach ($items as $delta => $item) { + $target_ids[] = $item['target_id']; + } + + // Load them all. + if ($target_ids) { + $target_entities = entity_load($target_type, $target_ids); + } + + // Create a list item for each entity. + foreach ($target_entities as $id => $entity) { + // Only add entities to the list that the user will have access to. + if (isset($item['target_id']) && entity_access('view', $target_type, $entity)) { + $label = entity_label($target_type, $entity); + if ($contrib_settings['entityreference_link']) { + $uri = entity_uri($target_type, $entity); + $target_type_class = drupal_html_class($target_type); + $classes = array($target_type_class, $target_type_class . '-' . $id, 'entityreference'); + $list_items[$id] = l($label, $uri['path'], array('attributes' => array('class' => $classes))); + } + else { + $list_items[$id] = field_filter_xss($label); + } + } + } + + return $list_items; +} + +/** + * Node reference field listing callback. + */ +function textformatter_contrib_node_reference_field_create_list($entity_type, $entity, $field, $instance, $langcode, $items, $display) { + $list_items = $node_ids = array(); + $contrib_settings = $display['settings']['textformatter_contrib']; + + // Get an array of entity ids. + foreach ($items as $delta => $item) { + $node_ids[] = $item['nid']; + } + + // Load them all. + if (!empty($node_ids)) { + $nodes = entity_load('node', $node_ids); + + foreach ($nodes as $id => $node) { + $label = entity_label('node', $node); + $uri = entity_uri('node', $node); + if ($contrib_settings['node_reference_link']) { + $classes = array('node', 'node-' . $id, 'node-' . drupal_html_class($node->type), 'node-reference'); + $list_items[$id] = l($label, $uri['path'], array('attributes' => array('class' => $classes))); + } + else { + $list_items[$id] = field_filter_xss($label); + } + } + } + + return $list_items; +} + +/** + * User reference field listing callback. + */ +function textformatter_contrib_user_reference_field_create_list($entity_type, $entity, $field, $instance, $langcode, $items, $display) { + $list_items = $user_ids = array(); + $contrib_settings = $display['settings']['textformatter_contrib']; + + // Get an array of entity ids. + foreach ($items as $delta => $item) { + // Only add if the access is TRUE for current user. + if ($item['access']) { + $user_ids[] = $item['uid']; + } + } + + // Load them all. + if (!empty($user_ids)) { + $users = entity_load('user', $user_ids); + + foreach ($users as $id => $user) { + $label = entity_label('user', $user); + $uri = entity_uri('user', $user); + if ($contrib_settings['user_reference_link']) { + $classes = array('user', 'user-' . $id, 'user-reference'); + $list_items[$id] = l($label, $uri['path'], array('attributes' => array('class' => $classes))); + } + else { + $list_items[$id] = field_filter_xss($label); + } + } + } + + return $list_items; +} + +/** + * Link field listing callback. + */ +function textformatter_contrib_link_field_create_list($entity_type, $entity, $field, $instance, $langcode, $items, $display) { + $list_items = array(); + + foreach ($items as $delta => $item) { + $contrib_settings = $display['settings']['textformatter_contrib']; + + $link_display = (isset($contrib_settings['link_field_display_type']) && !empty($contrib_settings['link_field_display_type'])) + ? $contrib_settings['link_field_display_type'] : 'link_default'; + + $list_items[] = theme('link_formatter_' . $link_display, array('element' => $item, 'field' => $instance)); + } + + return $list_items; +} + +/** + * Implements hook_textformatter_field_formatter_settings_form_alter(). + */ +function textformatter_contrib_textformatter_field_formatter_settings_form_alter(&$form, &$form_state, $context) { + $field = $context['field']; + $view_mode = $context['view_mode']; + $settings = $context['instance']['display'][$view_mode]['settings']; + + if ($field['type'] == 'entityreference') { + $form['textformatter_contrib']['entityreference_link'] = array( + '#type' => 'checkbox', + '#title' => t("Link list items to their @entity entity.", array('@entity' => $field['settings']['target_type'])), + '#description' => t("Generate item list with links to the node page"), + '#default_value' => isset($settings['textformatter_contrib']['entityreference_link']) ? $settings['textformatter_contrib']['entityreference_link'] : TRUE, + ); + } + + if ($field['type'] == 'node_reference') { + $form['textformatter_contrib']['node_reference_link'] = array( + '#type' => 'checkbox', + '#title' => t("Link list items to their node."), + '#description' => t("Generate item list with links to the node page"), + '#default_value' => isset($settings['textformatter_contrib']['node_reference_link']) ? $settings['textformatter_contrib']['node_reference_link'] : TRUE, + ); + } + + if ($field['type'] == 'user_reference') { + $form['textformatter_contrib']['user_reference_link'] = array( + '#type' => 'checkbox', + '#title' => t("Link list items to their user page."), + '#description' => t("Generate item list with links to the user page"), + '#default_value' => isset($settings['textformatter_contrib']['user_reference_link']) ? $settings['textformatter_contrib']['user_reference_link'] : TRUE, + ); + } + + if ($field['type'] == 'link_field') { + $link_info = is_callable('link_field_formatter_info') ? link_field_formatter_info() : array(); + $form['textformatter_contrib']['link_field_display_type'] = array( + '#type' => 'select', + '#title' => t('Link field formatting type'), + '#description' => t('Select the type of link field to show in the list.'), + '#options' => drupal_map_assoc(array_keys($link_info)), + '#default_value' => isset($settings['textformatter_contrib']['link_field_display_type']) ? $settings['textformatter_contrib']['link_field_display_type'] : 'link_default', + ); + } +} diff --git a/profiles/wcm_base/modules/custom/ocio_landing_page/ocio_landing_page.strongarm.inc b/profiles/wcm_base/modules/custom/ocio_landing_page/ocio_landing_page.strongarm.inc index 591a3c3a..cfe3cc5e 100644 --- a/profiles/wcm_base/modules/custom/ocio_landing_page/ocio_landing_page.strongarm.inc +++ b/profiles/wcm_base/modules/custom/ocio_landing_page/ocio_landing_page.strongarm.inc @@ -299,6 +299,7 @@ function ocio_landing_page_strongarm() { 'token-node:source' => 'token-node:source', 'token-node:log' => 'token-node:log', 'token-node:content-type' => 'token-node:content-type', + 'token-node:menu-link' => 'token-node:menu-link', 'token-node:nid' => 'token-node:nid', 'token-node:vid' => 'token-node:vid', 'token-node:title' => 'token-node:title', @@ -312,7 +313,6 @@ function ocio_landing_page_strongarm() { 'token-node:author' => 'token-node:author', 'token-node:uuid' => 'token-node:uuid', 'token-node:vuuid' => 'token-node:vuuid', - 'token-node:menu-link' => 'token-node:menu-link', 'token-node:original' => 'token-node:original', 'token-node:field_ocio_body' => 'token-node:field_ocio_body', 'token-node:field_tags' => 'token-node:field_tags', @@ -413,6 +413,11 @@ function ocio_landing_page_strongarm() { 'token-file-type:machine-name' => 'token-file-type:machine-name', 'token-file-type:count' => 'token-file-type:count', 'token-file-type:edit-url' => 'token-file-type:edit-url', + 'token-menu:name' => 'token-menu:name', + 'token-menu:machine-name' => 'token-menu:machine-name', + 'token-menu:description' => 'token-menu:description', + 'token-menu:menu-link-count' => 'token-menu:menu-link-count', + 'token-menu:edit-url' => 'token-menu:edit-url', 'token-site:name' => 'token-site:name', 'token-site:slogan' => 'token-site:slogan', 'token-site:mail' => 'token-site:mail', @@ -432,11 +437,6 @@ function ocio_landing_page_strongarm() { 'token-view:machine-name' => 'token-view:machine-name', 'token-view:title' => 'token-view:title', 'token-view:url' => 'token-view:url', - 'token-menu:name' => 'token-menu:name', - 'token-menu:machine-name' => 'token-menu:machine-name', - 'token-menu:description' => 'token-menu:description', - 'token-menu:menu-link-count' => 'token-menu:menu-link-count', - 'token-menu:edit-url' => 'token-menu:edit-url', 'token-node:book' => 0, 'token-node:field_admin_lock' => 0, 'token-node:field_answer' => 0, @@ -643,9 +643,9 @@ function ocio_landing_page_strongarm() { 'views_panes-faq-panel_pane_1' => 'views_panes-faq-panel_pane_1', 'views_panes-ocio_news_archive-titles_pane' => 'views_panes-ocio_news_archive-titles_pane', 'views_panes-ocio_news_archive-teasers_pane' => 'views_panes-ocio_news_archive-teasers_pane', + 'views_panes-ocio_news_archive-trio_pane' => 'views_panes-ocio_news_archive-trio_pane', 'views_panes-ocio_twitter-panel_pane_1' => 'views_panes-ocio_twitter-panel_pane_1', 'views_panes-leadership_listing-panel_pane_1' => 0, - 'views_panes-ocio_news_archive-trio_pane' => 0, 'views_panes-panopoly_taxonomy-taxonomy_content' => 0, 'views_panes-panopoly_widgets_general_content-list_of_content' => 0, 'views_panes-panopoly_widgets_general_content-piece_of_content' => 0, diff --git a/profiles/wcm_base/modules/custom/ocio_media/ocio_media.features.features_overrides.inc b/profiles/wcm_base/modules/custom/ocio_media/ocio_media.features.features_overrides.inc index 6271bb7e..6407d677 100644 --- a/profiles/wcm_base/modules/custom/ocio_media/ocio_media.features.features_overrides.inc +++ b/profiles/wcm_base/modules/custom/ocio_media/ocio_media.features.features_overrides.inc @@ -23,6 +23,7 @@ function ocio_media_features_override_default_overrides() { $overrides["file_display.image__preview__file_field_image.weight"] = -48; $overrides["file_display.image__preview__file_field_media_large_icon.weight"] = -47; $overrides["file_display.video__default__media_vimeo_video.settings|protocol"] = '//'; + $overrides["file_display.video__default__media_vimeo_video.settings|protocol_specify"] = FALSE; $overrides["file_display.video__default__media_youtube_video.settings|modestbranding"] = 1; $overrides["file_display.video__preview__file_field_file_default.status"] = FALSE; $overrides["file_display.video__preview__file_field_file_default.weight"] = -41; @@ -38,5 +39,53 @@ function ocio_media_features_override_default_overrides() { $overrides["file_type.image.disabled"] = FALSE; $overrides["file_type.video.disabled"] = FALSE; + // Exported overrides for: views_view + $overrides["views_view.media_default.display|default|display_options|filters|field_file_tags_tid"] = array( + 'id' => 'field_file_tags_tid', + 'table' => 'field_data_field_file_tags', + 'field' => 'field_file_tags_tid', + 'exposed' => TRUE, + 'expose' => array( + 'operator_id' => 'field_file_tags_tid_op', + 'label' => 'Tag', + 'operator' => 'field_file_tags_tid_op', + 'identifier' => 'field_file_tags_tid', + 'remember_roles' => array( + 2 => 2, + 1 => 0, + 5 => 0, + 4 => 0, + 7 => 0, + 6 => 0, + 3 => 0, + ), + ), + 'type' => 'select', + 'vocabulary' => 'wcm_file_tags', + ); + $overrides["views_view.media_default.display|media_browser_my_files|display_options|filters|field_file_tags_tid"] = array( + 'id' => 'field_file_tags_tid', + 'table' => 'field_data_field_file_tags', + 'field' => 'field_file_tags_tid', + 'exposed' => TRUE, + 'expose' => array( + 'operator_id' => 'field_file_tags_tid_op', + 'label' => 'Tag', + 'operator' => 'field_file_tags_tid_op', + 'identifier' => 'field_file_tags_tid', + 'remember_roles' => array( + 2 => 2, + 1 => 0, + 5 => 0, + 4 => 0, + 7 => 0, + 6 => 0, + 3 => 0, + ), + ), + 'type' => 'select', + 'vocabulary' => 'wcm_file_tags', + ); + return $overrides; } diff --git a/profiles/wcm_base/modules/custom/ocio_media/ocio_media.features.inc b/profiles/wcm_base/modules/custom/ocio_media/ocio_media.features.inc index edb8758b..e192cfcb 100644 --- a/profiles/wcm_base/modules/custom/ocio_media/ocio_media.features.inc +++ b/profiles/wcm_base/modules/custom/ocio_media/ocio_media.features.inc @@ -51,6 +51,7 @@ function ocio_media_file_default_displays_alter(&$data) { } if (isset($data['video__default__media_vimeo_video'])) { $data['video__default__media_vimeo_video']->settings['protocol'] = '//'; /* WAS: 'https://' */ + $data['video__default__media_vimeo_video']->settings['protocol_specify'] = FALSE; /* WAS: 0 */ } if (isset($data['video__default__media_youtube_video'])) { $data['video__default__media_youtube_video']->settings['modestbranding'] = 1; /* WAS: 0 */ @@ -89,3 +90,57 @@ function ocio_media_file_default_types_alter(&$data) { $data['video']->disabled = FALSE; /* WAS: '' */ } } + +/** + * Implements hook_views_default_views_alter(). + */ +function ocio_media_views_default_views_alter(&$data) { + if (isset($data['media_default'])) { + $data['media_default']->display['default']->display_options['filters']['field_file_tags_tid'] = array( + 'id' => 'field_file_tags_tid', + 'table' => 'field_data_field_file_tags', + 'field' => 'field_file_tags_tid', + 'exposed' => TRUE, + 'expose' => array( + 'operator_id' => 'field_file_tags_tid_op', + 'label' => 'Tag', + 'operator' => 'field_file_tags_tid_op', + 'identifier' => 'field_file_tags_tid', + 'remember_roles' => array( + 2 => 2, + 1 => 0, + 5 => 0, + 4 => 0, + 7 => 0, + 6 => 0, + 3 => 0, + ), + ), + 'type' => 'select', + 'vocabulary' => 'wcm_file_tags', + ); /* WAS: '' */ + $data['media_default']->display['media_browser_my_files']->display_options['filters']['field_file_tags_tid'] = array( + 'id' => 'field_file_tags_tid', + 'table' => 'field_data_field_file_tags', + 'field' => 'field_file_tags_tid', + 'exposed' => TRUE, + 'expose' => array( + 'operator_id' => 'field_file_tags_tid_op', + 'label' => 'Tag', + 'operator' => 'field_file_tags_tid_op', + 'identifier' => 'field_file_tags_tid', + 'remember_roles' => array( + 2 => 2, + 1 => 0, + 5 => 0, + 4 => 0, + 7 => 0, + 6 => 0, + 3 => 0, + ), + ), + 'type' => 'select', + 'vocabulary' => 'wcm_file_tags', + ); /* WAS: '' */ + } +} diff --git a/profiles/wcm_base/modules/custom/ocio_media/ocio_media.info b/profiles/wcm_base/modules/custom/ocio_media/ocio_media.info index de6cfa84..0a4dce84 100644 --- a/profiles/wcm_base/modules/custom/ocio_media/ocio_media.info +++ b/profiles/wcm_base/modules/custom/ocio_media/ocio_media.info @@ -58,6 +58,7 @@ features[features_overrides][] = file_display.image__preview__file_field_image.s features[features_overrides][] = file_display.image__preview__file_field_image.weight features[features_overrides][] = file_display.image__preview__file_field_media_large_icon.weight features[features_overrides][] = file_display.video__default__media_vimeo_video.settings|protocol +features[features_overrides][] = file_display.video__default__media_vimeo_video.settings|protocol_specify features[features_overrides][] = file_display.video__default__media_youtube_video.settings|modestbranding features[features_overrides][] = file_display.video__preview__file_field_file_default.status features[features_overrides][] = file_display.video__preview__file_field_file_default.weight @@ -70,6 +71,8 @@ features[features_overrides][] = file_type.audio.disabled features[features_overrides][] = file_type.document.disabled features[features_overrides][] = file_type.image.disabled features[features_overrides][] = file_type.video.disabled +features[features_overrides][] = views_view.media_default.display|default|display_options|filters|field_file_tags_tid +features[features_overrides][] = views_view.media_default.display|media_browser_my_files|display_options|filters|field_file_tags_tid features[field_instance][] = file-document-field_file_description features[field_instance][] = file-image-field_basic_image_caption features[field_instance][] = file-image-field_file_description diff --git a/profiles/wcm_base/modules/custom/ocio_news/ocio_news.info b/profiles/wcm_base/modules/custom/ocio_news/ocio_news.info index 3a5b04cf..fef1203a 100644 --- a/profiles/wcm_base/modules/custom/ocio_news/ocio_news.info +++ b/profiles/wcm_base/modules/custom/ocio_news/ocio_news.info @@ -12,9 +12,11 @@ dependencies[] = ds dependencies[] = features dependencies[] = file_entity dependencies[] = image +dependencies[] = list dependencies[] = media dependencies[] = ocio_field_bases dependencies[] = ocio_taxonomy +dependencies[] = options dependencies[] = override_node_options dependencies[] = panopoly_core dependencies[] = strongarm diff --git a/profiles/wcm_base/modules/custom/ocio_news/ocio_news.views_default.inc b/profiles/wcm_base/modules/custom/ocio_news/ocio_news.views_default.inc index fb440e2b..293a5795 100644 --- a/profiles/wcm_base/modules/custom/ocio_news/ocio_news.views_default.inc +++ b/profiles/wcm_base/modules/custom/ocio_news/ocio_news.views_default.inc @@ -45,6 +45,8 @@ function ocio_news_views_default_views() { $handler->display->display_options['sorts']['created']['id'] = 'created'; $handler->display->display_options['sorts']['created']['table'] = 'node'; $handler->display->display_options['sorts']['created']['field'] = 'created'; + $handler->display->display_options['sorts']['created']['order'] = 'DESC'; + $handler->display->display_options['sorts']['created']['granularity'] = 'minute'; /* Filter criterion: Content: Published */ $handler->display->display_options['filters']['status']['id'] = 'status'; $handler->display->display_options['filters']['status']['table'] = 'node'; diff --git a/profiles/wcm_base/modules/custom/ocio_panels_settings/ocio_panels_settings.features.features_overrides.inc b/profiles/wcm_base/modules/custom/ocio_panels_settings/ocio_panels_settings.features.features_overrides.inc index 2aad9b0e..88fe9eff 100644 --- a/profiles/wcm_base/modules/custom/ocio_panels_settings/ocio_panels_settings.features.features_overrides.inc +++ b/profiles/wcm_base/modules/custom/ocio_panels_settings/ocio_panels_settings.features.features_overrides.inc @@ -59,7 +59,7 @@ function ocio_panels_settings_features_override_default_overrides() { ), 'css' => array(), 'extras' => array(), - 'position' => 3, + 'position' => 4, 'locks' => array(), 'uuid' => '08dde41f-c835-4e3a-b0ef-28191ff0275d', ); @@ -82,7 +82,7 @@ function ocio_panels_settings_features_override_default_overrides() { ), 'css' => array(), 'extras' => array(), - 'position' => 4, + 'position' => 5, 'locks' => array(), 'uuid' => '13dff848-cce9-4135-9dcc-dab92cb83895', ); @@ -106,7 +106,7 @@ function ocio_panels_settings_features_override_default_overrides() { ), 'css' => array(), 'extras' => array(), - 'position' => 5, + 'position' => 3, 'locks' => array(), 'uuid' => '3dbe9a87-780b-4039-bb07-723f5c8bca58', ); @@ -237,9 +237,9 @@ function ocio_panels_settings_features_override_default_overrides() { $overrides["page_manager_handlers.node_edit_panel_context.conf|display|panels|sidebar|0"] = 'new-71e8c64f-55c3-40b6-ab0d-a93547057e44'; $overrides["page_manager_handlers.node_edit_panel_context.conf|display|panels|sidebar|1"] = 'new-da419228-f10f-48ea-9972-7398d723c22c'; $overrides["page_manager_handlers.node_edit_panel_context.conf|display|panels|sidebar|2"] = 'new-5d180289-633a-4162-b192-a1314cce1e4c'; - $overrides["page_manager_handlers.node_edit_panel_context.conf|display|panels|sidebar|3"] = 'new-08dde41f-c835-4e3a-b0ef-28191ff0275d'; - $overrides["page_manager_handlers.node_edit_panel_context.conf|display|panels|sidebar|4"] = 'new-13dff848-cce9-4135-9dcc-dab92cb83895'; - $overrides["page_manager_handlers.node_edit_panel_context.conf|display|panels|sidebar|5"] = 'new-3dbe9a87-780b-4039-bb07-723f5c8bca58'; + $overrides["page_manager_handlers.node_edit_panel_context.conf|display|panels|sidebar|3"] = 'new-3dbe9a87-780b-4039-bb07-723f5c8bca58'; + $overrides["page_manager_handlers.node_edit_panel_context.conf|display|panels|sidebar|4"] = 'new-08dde41f-c835-4e3a-b0ef-28191ff0275d'; + $overrides["page_manager_handlers.node_edit_panel_context.conf|display|panels|sidebar|5"] = 'new-13dff848-cce9-4135-9dcc-dab92cb83895'; $overrides["page_manager_handlers.node_edit_panel_context.conf|display|panels|sidebar|6"]["DELETED"] = TRUE; $overrides["page_manager_handlers.node_edit_panel_context.weight"] = -29; diff --git a/profiles/wcm_base/modules/custom/ocio_panels_settings/ocio_panels_settings.features.inc b/profiles/wcm_base/modules/custom/ocio_panels_settings/ocio_panels_settings.features.inc index b8e59a43..aa706211 100644 --- a/profiles/wcm_base/modules/custom/ocio_panels_settings/ocio_panels_settings.features.inc +++ b/profiles/wcm_base/modules/custom/ocio_panels_settings/ocio_panels_settings.features.inc @@ -71,7 +71,7 @@ function ocio_panels_settings_default_page_manager_handlers_alter(&$data) { ), 'css' => array(), 'extras' => array(), - 'position' => 3, + 'position' => 4, 'locks' => array(), 'uuid' => '08dde41f-c835-4e3a-b0ef-28191ff0275d', ); /* WAS: '' */ @@ -94,7 +94,7 @@ function ocio_panels_settings_default_page_manager_handlers_alter(&$data) { ), 'css' => array(), 'extras' => array(), - 'position' => 4, + 'position' => 5, 'locks' => array(), 'uuid' => '13dff848-cce9-4135-9dcc-dab92cb83895', ); /* WAS: '' */ @@ -117,7 +117,7 @@ function ocio_panels_settings_default_page_manager_handlers_alter(&$data) { ), 'css' => array(), 'extras' => array(), - 'position' => 5, + 'position' => 3, 'locks' => array(), 'uuid' => '3dbe9a87-780b-4039-bb07-723f5c8bca58', ); /* WAS: '' */ @@ -242,9 +242,9 @@ function ocio_panels_settings_default_page_manager_handlers_alter(&$data) { $data['node_edit_panel_context']->conf['display']->panels['sidebar'][0] = 'new-71e8c64f-55c3-40b6-ab0d-a93547057e44'; /* WAS: 'new-373bd769-1e08-4ec5-85b6-0a1d2fc759fd' */ $data['node_edit_panel_context']->conf['display']->panels['sidebar'][1] = 'new-da419228-f10f-48ea-9972-7398d723c22c'; /* WAS: 'new-51126c95-cf51-4ad6-a27a-11e4260d8023' */ $data['node_edit_panel_context']->conf['display']->panels['sidebar'][2] = 'new-5d180289-633a-4162-b192-a1314cce1e4c'; /* WAS: 'new-99f6c0bd-36fd-411b-9833-c0be0fab7548' */ - $data['node_edit_panel_context']->conf['display']->panels['sidebar'][3] = 'new-08dde41f-c835-4e3a-b0ef-28191ff0275d'; /* WAS: 'new-e38ab3a3-24d0-4ac2-900e-4ddb0248be0c' */ - $data['node_edit_panel_context']->conf['display']->panels['sidebar'][4] = 'new-13dff848-cce9-4135-9dcc-dab92cb83895'; /* WAS: 'new-9176b962-e64f-44a6-8ebe-e03ebf0f6c3d' */ - $data['node_edit_panel_context']->conf['display']->panels['sidebar'][5] = 'new-3dbe9a87-780b-4039-bb07-723f5c8bca58'; /* WAS: 'new-6e4a98d8-3738-41b9-8c33-4b4c905c6834' */ + $data['node_edit_panel_context']->conf['display']->panels['sidebar'][3] = 'new-3dbe9a87-780b-4039-bb07-723f5c8bca58'; /* WAS: 'new-e38ab3a3-24d0-4ac2-900e-4ddb0248be0c' */ + $data['node_edit_panel_context']->conf['display']->panels['sidebar'][4] = 'new-08dde41f-c835-4e3a-b0ef-28191ff0275d'; /* WAS: 'new-9176b962-e64f-44a6-8ebe-e03ebf0f6c3d' */ + $data['node_edit_panel_context']->conf['display']->panels['sidebar'][5] = 'new-13dff848-cce9-4135-9dcc-dab92cb83895'; /* WAS: 'new-6e4a98d8-3738-41b9-8c33-4b4c905c6834' */ $data['node_edit_panel_context']->weight = -29; /* WAS: 0 */ unset($data['node_edit_panel_context']->conf['display']->content['new-373bd769-1e08-4ec5-85b6-0a1d2fc759fd']); unset($data['node_edit_panel_context']->conf['display']->content['new-51126c95-cf51-4ad6-a27a-11e4260d8023']); diff --git a/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.field_base.inc b/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.field_base.inc index 5082166e..6a6c72d6 100644 --- a/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.field_base.inc +++ b/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.field_base.inc @@ -10,21 +10,39 @@ function ocio_taxonomy_field_default_field_bases() { $field_bases = array(); - // Exported field_base: 'field_tags' - $field_bases['field_tags'] = array( + // Exported field_base: 'field_file_tags' + $field_bases['field_file_tags'] = array( 'active' => 1, - 'cardinality' => -1, + 'cardinality' => 1, 'deleted' => 0, 'entity_types' => array(), - 'field_name' => 'field_tags', - 'foreign keys' => array( + 'field_name' => 'field_file_tags', + 'indexes' => array( 'tid' => array( - 'columns' => array( - 'tid' => 'tid', + 0 => 'tid', + ), + ), + 'locked' => 0, + 'module' => 'taxonomy', + 'settings' => array( + 'allowed_values' => array( + 0 => array( + 'vocabulary' => 'wcm_file_tags', + 'parent' => 0, ), - 'table' => 'taxonomy_term_data', ), ), + 'translatable' => 0, + 'type' => 'taxonomy_term_reference', + ); + + // Exported field_base: 'field_tags' + $field_bases['field_tags'] = array( + 'active' => 1, + 'cardinality' => -1, + 'deleted' => 0, + 'entity_types' => array(), + 'field_name' => 'field_tags', 'indexes' => array( 'tid' => array( 0 => 'tid', diff --git a/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.field_instance.inc b/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.field_instance.inc index 33bd2d8e..6aa153dc 100644 --- a/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.field_instance.inc +++ b/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.field_instance.inc @@ -10,6 +10,240 @@ function ocio_taxonomy_field_default_field_instances() { $field_instances = array(); + // Exported field_instance: 'file-audio-field_file_tags' + $field_instances['file-audio-field_file_tags'] = array( + 'bundle' => 'audio', + 'default_value' => NULL, + 'deleted' => 0, + 'description' => '', + 'display' => array( + 'default' => array( + 'label' => 'above', + 'module' => 'taxonomy', + 'settings' => array(), + 'type' => 'taxonomy_term_reference_link', + 'weight' => 0, + ), + 'preview' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'teaser' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + ), + 'ds_extras_field_template' => '', + 'entity_type' => 'file', + 'field_name' => 'field_file_tags', + 'label' => 'Tags', + 'required' => 0, + 'settings' => array( + 'user_register_form' => FALSE, + 'wysiwyg_override' => 1, + ), + 'widget' => array( + 'active' => 0, + 'module' => 'taxonomy', + 'settings' => array( + 'autocomplete_path' => 'taxonomy/autocomplete', + 'size' => 60, + ), + 'type' => 'taxonomy_autocomplete', + 'weight' => -3, + ), + ); + + // Exported field_instance: 'file-document-field_file_tags' + $field_instances['file-document-field_file_tags'] = array( + 'bundle' => 'document', + 'default_value' => NULL, + 'deleted' => 0, + 'description' => '', + 'display' => array( + 'default' => array( + 'label' => 'above', + 'module' => 'taxonomy', + 'settings' => array(), + 'type' => 'taxonomy_term_reference_link', + 'weight' => 2, + ), + 'preview' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'teaser' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + ), + 'ds_extras_field_template' => '', + 'entity_type' => 'file', + 'field_name' => 'field_file_tags', + 'label' => 'Tags', + 'required' => 0, + 'settings' => array( + 'user_register_form' => FALSE, + 'wysiwyg_override' => 1, + ), + 'widget' => array( + 'active' => 0, + 'module' => 'taxonomy', + 'settings' => array( + 'autocomplete_path' => 'taxonomy/autocomplete', + 'size' => 60, + ), + 'type' => 'taxonomy_autocomplete', + 'weight' => -1, + ), + ); + + // Exported field_instance: 'file-image-field_file_tags' + $field_instances['file-image-field_file_tags'] = array( + 'bundle' => 'image', + 'default_value' => NULL, + 'deleted' => 0, + 'description' => '', + 'display' => array( + 'default' => array( + 'label' => 'above', + 'module' => 'taxonomy', + 'settings' => array(), + 'type' => 'taxonomy_term_reference_link', + 'weight' => 5, + ), + 'image_full' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'image_large' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'image_left' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'image_max' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'image_right' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'image_small' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'preview' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + ), + 'ds_extras_field_template' => '', + 'entity_type' => 'file', + 'field_name' => 'field_file_tags', + 'label' => 'Tags', + 'required' => 0, + 'settings' => array( + 'user_register_form' => FALSE, + 'wysiwyg_override' => 1, + ), + 'widget' => array( + 'active' => 0, + 'module' => 'taxonomy', + 'settings' => array( + 'autocomplete_path' => 'taxonomy/autocomplete', + 'size' => 60, + ), + 'type' => 'taxonomy_autocomplete', + 'weight' => 2, + ), + ); + + // Exported field_instance: 'file-video-field_file_tags' + $field_instances['file-video-field_file_tags'] = array( + 'bundle' => 'video', + 'default_value' => NULL, + 'deleted' => 0, + 'description' => '', + 'display' => array( + 'default' => array( + 'label' => 'above', + 'module' => 'taxonomy', + 'settings' => array(), + 'type' => 'taxonomy_term_reference_link', + 'weight' => 3, + ), + 'preview' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'video_left' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'video_max' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + 'video_right' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), + ), + 'ds_extras_field_template' => '', + 'entity_type' => 'file', + 'field_name' => 'field_file_tags', + 'label' => 'Tags', + 'required' => 0, + 'settings' => array( + 'user_register_form' => FALSE, + 'wysiwyg_override' => 1, + ), + 'widget' => array( + 'active' => 0, + 'module' => 'taxonomy', + 'settings' => array( + 'autocomplete_path' => 'taxonomy/autocomplete', + 'size' => 60, + ), + 'type' => 'taxonomy_autocomplete', + 'weight' => -2, + ), + ); + // Exported field_instance: 'node-article-field_tags' $field_instances['node-article-field_tags'] = array( 'bundle' => 'article', @@ -40,6 +274,12 @@ function ocio_taxonomy_field_default_field_instances() { 'type' => 'ds_taxonomy_separator', 'weight' => 3, ), + 'search_index' => array( + 'label' => 'above', + 'settings' => array(), + 'type' => 'hidden', + 'weight' => 0, + ), 'teaser' => array( 'label' => 'above', 'settings' => array(), diff --git a/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.taxonomy.inc b/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.taxonomy.inc index 97838258..f77cb9a9 100644 --- a/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.taxonomy.inc +++ b/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.features.taxonomy.inc @@ -15,7 +15,15 @@ function ocio_taxonomy_taxonomy_default_vocabularies() { 'description' => '', 'hierarchy' => 0, 'module' => 'taxonomy', - 'weight' => 0, + 'weight' => -9, + ), + 'wcm_file_tags' => array( + 'name' => 'File Tags', + 'machine_name' => 'wcm_file_tags', + 'description' => '', + 'hierarchy' => 0, + 'module' => 'taxonomy', + 'weight' => -8, ), ); } diff --git a/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.info b/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.info index 5507a9e1..191ae190 100644 --- a/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.info +++ b/profiles/wcm_base/modules/custom/ocio_taxonomy/ocio_taxonomy.info @@ -10,13 +10,18 @@ dependencies[] = taxonomy dependencies[] = uuid dependencies[] = uuid_features features[features_api][] = api:2 +features[field_base][] = field_file_tags features[field_base][] = field_tags +features[field_instance][] = file-audio-field_file_tags +features[field_instance][] = file-document-field_file_tags +features[field_instance][] = file-image-field_file_tags +features[field_instance][] = file-video-field_file_tags features[field_instance][] = node-article-field_tags features[taxonomy][] = ocio_tags +features[taxonomy][] = wcm_file_tags features[uuid_term][] = 11c488a9-c4d6-41d2-9f5a-7e1aff2465bc features[uuid_term][] = 3f36288d-48cb-4a01-a725-dee41084db61 features[uuid_term][] = 48e6d0a8-38df-445c-b739-efe08f048cb6 features[uuid_term][] = 6cd2714c-91a5-4b78-8f36-ee2f613380fc features[uuid_term][] = 958c7ff0-5741-4954-aad7-c35a2c6cc0cc features[uuid_term][] = 9f57971f-1cbf-4b2b-a0df-262d2ea80f64 -mtime = 1422132576 diff --git a/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.features.features_overrides.inc b/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.features.features_overrides.inc index 7888536c..22f68bd1 100644 --- a/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.features.features_overrides.inc +++ b/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.features.features_overrides.inc @@ -11,9 +11,6 @@ function ocio_workbench_features_override_default_overrides() { // This code is only used for UI in features. Exported alters hooks do the magic. $overrides = array(); - // Exported overrides for: variable - $overrides["variable.views_defaults.value|workbench_files"] = TRUE; - // Exported overrides for: views_view $overrides["views_view.workbench_edited.display|page_1|display_options|path"] = 'admin/workbench/my/edits'; $overrides["views_view.workbench_files.display|default|display_options|empty"] = array( diff --git a/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.features.inc b/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.features.inc index 8f65ceed..befa9ce8 100644 --- a/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.features.inc +++ b/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.features.inc @@ -11,15 +11,6 @@ function ocio_workbench_views_api($module = NULL, $api = NULL) { return array("api" => "3.0"); } -/** - * Implements hook_strongarm_alter(). - */ -function ocio_workbench_strongarm_alter(&$data) { - if (isset($data['views_defaults'])) { - $data['views_defaults']->value['workbench_files'] = TRUE; /* WAS: '' */ - } -} - /** * Implements hook_views_default_views_alter(). */ diff --git a/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.info b/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.info index 6082d4e4..c28dc236 100644 --- a/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.info +++ b/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.info @@ -10,15 +10,12 @@ dependencies[] = views dependencies[] = workbench dependencies[] = workbench_media dependencies[] = workbench_moderation -dependencies[] = workbench_moderation -dependencies[] = workbench_moderation features[ctools][] = views:views_default:3.0 features[features_api][] = api:2 features[features_override_items][] = views_view.workbench_edited features[features_override_items][] = views_view.workbench_files features[features_override_items][] = views_view.workbench_moderation features[features_override_items][] = views_view.workbench_recent_content -features[features_overrides][] = variable.views_defaults.value|workbench_files features[features_overrides][] = views_view.workbench_edited.display|page_1|display_options|path features[features_overrides][] = views_view.workbench_files.display|default|display_options|empty features[features_overrides][] = views_view.workbench_files.display|default|display_options|fields|filename|link_to_file @@ -54,4 +51,3 @@ features_exclude[features_overrides][views_view.workbench_recent_content.display features_exclude[features_overrides][views_view.workbench_recent_content.display|page_1|display_options|tab_options] = views_view.workbench_recent_content.display|page_1|display_options|tab_options features_exclude[features_overrides][views_view.workbench_recent_content.display|block_1|display_options|defaults|title] = views_view.workbench_recent_content.display|block_1|display_options|defaults|title features_exclude[features_overrides][views_view.workbench_recent_content.display|block_1|display_options|title] = views_view.workbench_recent_content.display|block_1|display_options|title -mtime = 1424705296 diff --git a/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.views_default.inc b/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.views_default.inc index 84ce919d..b95a5795 100644 --- a/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.views_default.inc +++ b/profiles/wcm_base/modules/custom/ocio_workbench/ocio_workbench.views_default.inc @@ -187,6 +187,26 @@ function ocio_workbench_views_default_views() { 6 => 0, 3 => 0, ); + /* Filter criterion: File: Tags (field_file_tags) */ + $handler->display->display_options['filters']['field_file_tags_tid']['id'] = 'field_file_tags_tid'; + $handler->display->display_options['filters']['field_file_tags_tid']['table'] = 'field_data_field_file_tags'; + $handler->display->display_options['filters']['field_file_tags_tid']['field'] = 'field_file_tags_tid'; + $handler->display->display_options['filters']['field_file_tags_tid']['exposed'] = TRUE; + $handler->display->display_options['filters']['field_file_tags_tid']['expose']['operator_id'] = 'field_file_tags_tid_op'; + $handler->display->display_options['filters']['field_file_tags_tid']['expose']['label'] = 'Tag'; + $handler->display->display_options['filters']['field_file_tags_tid']['expose']['operator'] = 'field_file_tags_tid_op'; + $handler->display->display_options['filters']['field_file_tags_tid']['expose']['identifier'] = 'field_file_tags_tid'; + $handler->display->display_options['filters']['field_file_tags_tid']['expose']['remember_roles'] = array( + 2 => '2', + 1 => 0, + 5 => 0, + 4 => 0, + 7 => 0, + 6 => 0, + 3 => 0, + ); + $handler->display->display_options['filters']['field_file_tags_tid']['type'] = 'select'; + $handler->display->display_options['filters']['field_file_tags_tid']['vocabulary'] = 'wcm_file_tags'; /* Display: Page */ $handler = $view->new_display('page', 'Page', 'page_1'); diff --git a/profiles/wcm_base/modules/custom/ocio_wysiwyg/ocio_wysiwyg.features.wysiwyg.inc b/profiles/wcm_base/modules/custom/ocio_wysiwyg/ocio_wysiwyg.features.wysiwyg.inc index b046bfe8..92a29331 100644 --- a/profiles/wcm_base/modules/custom/ocio_wysiwyg/ocio_wysiwyg.features.wysiwyg.inc +++ b/profiles/wcm_base/modules/custom/ocio_wysiwyg/ocio_wysiwyg.features.wysiwyg.inc @@ -32,6 +32,7 @@ function ocio_wysiwyg_wysiwyg_default_profiles() { 'BulletedList' => 1, 'NumberedList' => 1, 'Unlink' => 1, + 'Anchor' => 1, 'Blockquote' => 1, 'HorizontalRule' => 1, 'Paste' => 1, diff --git a/profiles/wcm_base/themes/ocio_omega_base/css/ocio-omega-base.no-query.css b/profiles/wcm_base/themes/ocio_omega_base/css/ocio-omega-base.no-query.css index d958c554..d2bd7a04 100644 --- a/profiles/wcm_base/themes/ocio_omega_base/css/ocio-omega-base.no-query.css +++ b/profiles/wcm_base/themes/ocio_omega_base/css/ocio-omega-base.no-query.css @@ -3334,24 +3334,26 @@ a#skip:active:hover, a#skip:focus:hover { .pane-ocio-news-archive-trio-pane h2.pane-title { font-size: 28px; font-size: 2.8rem; - border-bottom: 1px solid #b00; - padding-bottom: 0.1em; - margin-bottom: 0; + margin-bottom: 0.2em; } .pane-ocio-news-archive-trio-pane .view-header { - margin-top: -1.6em; - margin-bottom: 2.4em; + border-bottom: 1px solid #b00; + margin-bottom: 1.4em; } .pane-ocio-news-archive-trio-pane a.more-link, .pane-ocio-news-archive-trio-pane a.field--name-node-link { - margin-top: 0.2em; + margin-top: -2.0em; font-weight: 400; color: #2d2d2d; - font-size: 14px; + font-size: 13px; + float: right; } .pane-ocio-news-archive-trio-pane a.more-link:hover, .pane-ocio-news-archive-trio-pane a.field--name-node-link:hover { text-decoration: none; color: #028da9; } +.pane-ocio-news-archive-trio-pane .views-row { + margin-bottom: 3em; +} .pane-ocio-news-archive-trio-pane .views-field-title h3 { font-size: 22px; font-size: 2.2rem; @@ -3369,6 +3371,9 @@ a#skip:active:hover, a#skip:focus:hover { color: #2d2d2d; text-decoration: none; } +.pane-ocio-news-archive-trio-pane .views-row { + margin-bottom: 1em; +} .pane-ocio-news-archive-trio-pane .views-row-1 { width: 33.9%; float: left; diff --git a/profiles/wcm_base/themes/ocio_omega_base/css/ocio-omega-base.styles.css b/profiles/wcm_base/themes/ocio_omega_base/css/ocio-omega-base.styles.css index f9ab5a3e..14c96472 100644 --- a/profiles/wcm_base/themes/ocio_omega_base/css/ocio-omega-base.styles.css +++ b/profiles/wcm_base/themes/ocio_omega_base/css/ocio-omega-base.styles.css @@ -3387,24 +3387,26 @@ a#skip:active:hover, a#skip:focus:hover { .pane-ocio-news-archive-trio-pane h2.pane-title { font-size: 28px; font-size: 2.8rem; - border-bottom: 1px solid #b00; - padding-bottom: 0.1em; - margin-bottom: 0; + margin-bottom: 0.2em; } .pane-ocio-news-archive-trio-pane .view-header { - margin-top: -1.6em; - margin-bottom: 2.4em; + border-bottom: 1px solid #b00; + margin-bottom: 1.4em; } .pane-ocio-news-archive-trio-pane a.more-link, .pane-ocio-news-archive-trio-pane a.field--name-node-link { - margin-top: 0.2em; + margin-top: -2.0em; font-weight: 400; color: #2d2d2d; - font-size: 14px; + font-size: 13px; + float: right; } .pane-ocio-news-archive-trio-pane a.more-link:hover, .pane-ocio-news-archive-trio-pane a.field--name-node-link:hover { text-decoration: none; color: #028da9; } +.pane-ocio-news-archive-trio-pane .views-row { + margin-bottom: 3em; +} .pane-ocio-news-archive-trio-pane .views-field-title h3 { font-size: 22px; font-size: 2.2rem; @@ -3423,6 +3425,9 @@ a#skip:active:hover, a#skip:focus:hover { text-decoration: none; } @media (min-width: 47.5em) { + .pane-ocio-news-archive-trio-pane .views-row { + margin-bottom: 1em; + } .pane-ocio-news-archive-trio-pane .views-row-1 { width: 33.9%; float: left; diff --git a/profiles/wcm_base/themes/ocio_omega_base/sass/components/views/_news.scss b/profiles/wcm_base/themes/ocio_omega_base/sass/components/views/_news.scss index c51953b8..a6cb3df7 100644 --- a/profiles/wcm_base/themes/ocio_omega_base/sass/components/views/_news.scss +++ b/profiles/wcm_base/themes/ocio_omega_base/sass/components/views/_news.scss @@ -102,27 +102,29 @@ h2.pane-title { @include font-size(2.8); - border-bottom: 1px solid $red; - padding-bottom: 0.1em; - margin-bottom: 0; + margin-bottom: 0.2em; } .view-header { - margin-top: -1.6em; - margin-bottom: 2.4em; + border-bottom: 1px solid $red; + margin-bottom: 1.4em; } a.more-link { - margin-top: 0.2em; + margin-top: -2.0em; font-weight: 400; color: $dk-gray; - font-size: 14px; + font-size: 13px; + float: right; &:hover { text-decoration: none; color: $blue; } } + .views-row { + margin-bottom: 3em; + } .views-field-title h3 { @include font-size(2.2); @@ -144,6 +146,10 @@ @include breakpoint($tab, true){ + + .views-row { + margin-bottom: 1em; + } .views-row-1 { width: 33.9%; float: left; diff --git a/profiles/wcm_base/wcm_base.info b/profiles/wcm_base/wcm_base.info index 88dc6b80..1daadd75 100644 --- a/profiles/wcm_base/wcm_base.info +++ b/profiles/wcm_base/wcm_base.info @@ -56,6 +56,7 @@ dependencies[] = flexslider_views dependencies[] = override_node_options dependencies[] = panels_accordion dependencies[] = telephone +dependencies[] = textformatter dependencies[] = uuid_features dependencies[] = views_bulk_operations dependencies[] = webform diff --git a/profiles/wcm_base/wcm_base.make b/profiles/wcm_base/wcm_base.make index 307de90d..9d26e94f 100644 --- a/profiles/wcm_base/wcm_base.make +++ b/profiles/wcm_base/wcm_base.make @@ -71,6 +71,9 @@ projects[special_menu_items][subdir] = contrib projects[telephone][version] = 1.0-alpha1 projects[telephone][subdir] = contrib +projects[textformatter][version] = 1.3 +projects[textformatter][subdir] = contrib + projects[token][version] = 1.5 projects[token][subdir] = contrib -- GitLab