Giter Site home page Giter Site logo

govcms / govcms7 Goto Github PK

View Code? Open in Web Editor NEW
113.0 113.0 76.0 37.19 MB

Current stable release of the main Drupal 7 GovCMS distribution, with releases mirrored at https://www.drupal.org/project/govcms

Home Page: https://www.govcms.gov.au/

License: GNU General Public License v2.0

PHP 95.29% CSS 1.10% JavaScript 0.39% Ruby 0.15% HTML 0.03% Makefile 0.18% Gherkin 1.35% Shell 0.06% Rich Text Format 0.01% SCSS 1.45%

govcms7's Introduction

GovCMS

GovCMS is an open-source Drupal distribution developed specifically for Australian government agencies. It is built on top of the Drupal content management system, providing a range of features and functionalities that are tailored to the unique needs of government websites.

Features

Key features of GovCMS include:

  • Accessibility compliance: GovCMS is designed to comply with the Web Content Accessibility Guidelines (WCAG) 2.1 Level AA, making it easier for government agencies to ensure that their websites are accessible to all users.
  • Content moderation: GovCMS includes a range of content moderation workflows, making it easy for government agencies to manage content and ensure that only approved content is published on their websites.
  • Security: GovCMS is built with security in mind, with regular security updates and patches provided by the Drupal and GovCMS Ops team.

Community

GovCMS Slack channel:

https://govcmschat.slack.com/archives/C01BD9B3V5W

Getting started

To get started with GovCMS, you need to have the following prerequisites:

  • A web server like Apache or Nginx
  • PHP version 8.1 or above
  • MySQL or PostgresSQL database

More documents can be found in:

Troubleshooting and Contributing

If you're encountering some oddities, here's a list of resolutions to some of the problems you may be experiencing.

Contributing to GovCMS

All contributions to GovCMS are welcome. Issues and pull requests may be submitted against the relevant GovCMS project on github where they will be addressed by the GovCMS team.

Patching GovCMS

Because GovCMS is a Drupal distribution, modules and configurations are not added directly to the codebase. Rather, they are referenced within the composer.json file.

Any alterations to Drupal core or contributed modules must have an associated drupal.org issue filed against the project in question. Modifications should be made directly to the project in question and patched into GovCMS rather than made directly against GovCMS.

It is a requirement for any patches to GovCMS to pass all automated testing prior to manual review. The automated testing checks for PHP syntax, coding standards, build completion and runs behavioural tests. It is also desirable that additions to the codebase add behat tests to ensure no regressions occur once committed.

To submit a patch, the GovCMS project should be forked and changes applied to a branch on the forked repository. Once all changes are applied, a pull request between GovCMS and the branch of the fork may be created.

License

GovCMS is released under the GNU General Public License v2.0. See the LICENSE file in the root of the repository for more information.

Back to top

govcms7's People

Contributors

aleayr avatar boztek avatar colinpaulwatson avatar deanvucic avatar drupal-spider avatar feng-shui avatar fiasco avatar fubarhouse avatar gargsuchi avatar gollyg avatar govcms-public avatar invisigoth avatar joshuarussell avatar jptaranto avatar jshrssll avatar kimpepper avatar larowlan avatar mstrelan avatar nickschuch avatar pandaskii avatar paulkilla avatar rcaracaus avatar ruwanl avatar seanhamlin avatar sonnykt avatar srowlands avatar suhyeonh avatar tara-wij avatar typhonius avatar xtfer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

govcms7's Issues

OpenTags module

Hi all

We’ve recently submitted the OpenTags module for approval.
It’s intended to work with govCMS, to improve the metadata tagging experience for end users.

Hoping that some of you might give us a hand by reviewing it to help move us through the approval process.

Thanks
Yang (Systemik Solutions)

Install fails on MAMP

Posted by Dale Baldwin on July 15, 2015 at 10:56am https://www.drupal.org/node/2533330
Trying to install on latest version of MAMP for testing. I'm getting this error when it gets to the last module to install.

An AJAX HTTP error occurred. HTTP Result Code: 500 Debugging information follows. Path: http://localhost:8888/govcms/install.php?profile=govcms&locale=en&id=1&op=do StatusText: Internal Server Error ResponseText: Uncaught exception thrown in shutdown function.PDOException: SQLSTATE[HY000]: General error in _menu_set_expanded_menus() (line 3365 of /Applications/MAMP/htdocs/govcms/includes/menu.inc).

It seems to install but am not getting to the user setup page afterwards to setup admin etc.

Building govCMS in a downstream repository

For contributors of govCMS, its helpful to be able to pull in changes to govCMS directly from git rather than updating through offical release. To do this is straight forward enough, you add govCMS as an upstream remote to your project git repository and merge in the changes from govCMS directly.

But this does require rebuilding govCMS every time you pull in changes. And the problem with that is that it wipes the docroot directory and builds it clean. Wiping away your custom themes and modules.

We should add a process to our build scripts that allow us to include custom themes and modules into govCMS when it compiles. If that makes sense, then we need to know how we should do that. Should there be an app directory in the root reserved for downstream usage?

Test drush make file creation

Follow up from #2 and #10 to ensure we're testing the Drush make file will deploy correctly on drupal.org and create the packaged distribution.

Make contributions easier by making PR requests testable

When a PR is contributed to govCMS there are several loops it has to get through to get tested. The tester has to be able to:

  • Clone down the PR and check the branch out in git
  • Compile govCMS
  • Install govCMS
  • Test the change

For someone who is not technical, there are a lot of technical steps to make this happen. If we could automatically setup the PR in a testable environment then this would help us get more community members involved by being able to test changes without having requiring the technical skills necessary to build and host a govCMS site.

govCMS Password Policy should update password strength indicator

The govCMS Password Policy module changes requirements for passwords as a result the password strength indicator gives inaccurate feedback to users.

I watched several users today attempt to set a password, on average without instructions it took them about 3 attempts each.

Agency cannot turn comments on/off

An agency advises that while they have comments turned on for their site they do not have the ability to turn them off globally. This is in response to a suggestion they turn off comments for the upcoming fork release, "We don’t have access to the permissions tab. I assumed this was locked out for all environments"

When agencies have comments on they should be able to turn them off. This could be due to scenarios as the above, or because the site is getting spammed/trolled in a fashion that comments are making it past spam filters.

Is there something that is needed to be done to facilitate agencies to self service for this functionality?

As a site editor I want to create 'mini-sites' within my main site

An agency has listed a requirement for adding mini-sites to their govCMS site (sample file attached).

Suggested approach was to upload a zipped archive attached to a node, and automatically extract this into the files directory. When the node is deleted, it should clean up all files uploaded. If a zip file contains any not-allowed extensions, the entire upload must be aborted, and no files saved to the file system.

h3. Requirements

File extensions permitted by default:

  • .js
  • .css
  • .htm
  • .html
  • .png
  • .jpg
  • .gif
  • .pdf
  • .doc
  • .docx
  • .ppt
  • .pptx
  • .xls
  • .xlsx
  • .tif
  • .xml
  • .txt

Extensions to never be allowed:

  • .exe
  • .scr
  • .bmp

Zip must:

  • contain index.html
  • not exceed a certain compression ratio (e.g. a zip bomb)
  • must pass clamav scanning

h3. TODO

  • What do we want to do around having no GA tracker on the pages?
  • How about accessibility of the zip file sites? How is this to be handled?

404 Everywhere

Hey guys, sorry for being a pain in the ass but I'm just trying to get it working.

After a successful build, I created the host that points to govcms/docroot folder.
When I navigate to the website I get the homepage that looks like on the attached file:
govcms

When I try to navigate anywhere (contact, publications etc) I get 404 Not found. Even /user doesn't work.

Did I just do something stupid or missed an important part?

Thanks.

Drupal robots.txt and search engine indexing issue - request module to be added

The default robots.txt file in does not block or restrict search engine from Google or Bing from displaying your admin or user login pages.
e.g. Search on govCMS in Google does not hide the /user, /user/password... etc from the govCMS robots.txt

This is affecting our site at PPSR as we have user access to our register application and search engine keeps coming up the admin/user page of Drupal, creating confusion.
This is an ongoing issue on Drupal api. https://api.drupal.org/api/drupal/robots.txt/7

As recommended by one of Acquia support, using the robotstxt module should be able to give us more control on the robots.txt: https://www.drupal.org/project/robotstxt

Remove/repurpose build:remote

The build:remote task has been replaced with build:local in #27. This issue is to decide:

  1. Whether we need build:remote
  2. How it should be implemented
  3. To document/add changes to the README

As a site developer I want to control the version of jQuery in use

As a site developer I want to control the version of jQuery in use

Drupal core is behind in the version of jQuery in use (1.4). Updates to jQuery are sometimes required for site builds that wish to run jQuery plugins as these do not always support older versions of jQuery.

This page outlines the issue and solutions: https://www.drupal.org/node/1058168

tl;dr:

  • the jquery_update module is a viable solution
  • alternatively you can make modifications in the theme layer which is less desirable

To discuss at gOPs.

Pathauto Persist is now obselete

Pathauto 7.x-1.3 now includes the functionality of Pathauto Persistent State which is now obsolete. We should update to the latest version.

I'm not sure what to do about removing the old module from govCMS. The pathauto update safely migrates the pathauto_persist data and disables the module, but it doesn't uninstall it. If you simply remove the module then you can't uninstall it. Perhaps manually uninstall it via a hook_update_n() in one of the govcms modules?

installer UI alignment not pretty

Just having a play with govCMS on simplytest me again, and this time remembered to log an issue.

I think the installer could do with a little theme love - the alignment is out of whack and doesn't give a good first impression.

Screenshot below.

govcms-install-alignment

Replace iconomist and favicon with responsive_favicons

The iconomist and favicon modules could be replaced with responsive_favicons. This will allow us to reduce the module footprint of govCMS whilst also increasing functionality.

This patch will need to:

  • Add responsive favicons to the make file
  • Add an update hook to a govCMS module (probably tweaks but perhaps the profile) to port any settings on sites which have these modules enabled.
  • Disable and uninstall those modules
  • Perhaps disable those modules from being enabled (hook_paranoia_disable_modules())?

We'll also need a follow-up patch for removal of those modules from the make file.

Patches welcome

As a Content author I don't want my binary files to be cached for 2 weeks

Currently our .htaccess file set's ExpiresDefault A1209600

Which means we are caching it for 2 weeks... many files get updated with the same name (unfortuantly) or crawled by google with a link directly to the file, rather than /file/ so we need to strike a happy medium between high cache times and happy content authors.

Why are we handling issues in Github?

Posted by kyuubi on July 17, 2015 at 10:34am

Hey guys,

Just trying to understand why we are handling the project issues in github.

This is a Drupal distro and people will typically search for issues here not in github.

Can you clarify?

Thanks

As an Administrator, I want to give Site Builders permission to Regional Date/Time Settings, but not all permissions from 'Administer site configuration'

To give Site Builders access to change their own Date/Time settings, requires the 'Administer site configuration' permission.

This also gives users a whole raft of additional access that we don't wish to provide them. Is there a way to include or exclude permission items.

As an indicator, this is what 'Administer site configuration' gives users:
File system
Image Toolkit
RSS Publishing
Maintenance Mode
Performance
Logging and errors
Regional settings
Date and time
Clean URLs
Site information
Cron
Status report

Bold items are ones we're happy to give people if we can carve them out into a separate permission item.

Updating contrib modules

What is the release schedule for updating contrib modules that don't have a security issue? Specifically I am aware of a few relevant bug fixes in new versions of Big Menu, Date and LinkIt. Is it recommended to just update these in sites/all/modules?

Remove ACSF build code from community distribution

Tools to build govCMS on ACSF don't need to be available in the open source repository as it doesn't really help any one. We should remove them and manage them in the correct version control systems.

LinkIt and Paragraphs compatibility issue

As mentioned in #62, LinkIt is currently incompatible with editing Paragraphs that have been loaded via ajax.

To reproduce this:

  1. Ensure you have a Paragraphs bundle with a field that has a WYSIWYG attached to it
  2. Ensure you have a content type with a paragraphs item field with the default edit mode set to "closed" or "preview"
  3. Create a new node and add at least one paragraphs item with a wysiwyg
  4. Save the node
  5. Edit the node, Click "Edit" on the paragraph, Click the LinkIt button

I have submitted a patch to LinkIt but it has not yet had any response. It is possible to workaround this issue using hook_element_info_alter().

I will submit two pull requests, one working around the issue in the govcms_editing feature module, and the other applying the patch to LinkIt.

Error while trying to upload an image

Hi guys,

Thanks for your help so far!

I have troubles uploading a "feature image" when I create new content, it just fails every time with:

An unrecoverable error occurred. The uploaded file likely exceeded the maximum file size (16 MB) that this server supports.

Now, I realize it might be an issue with my server setup, but I can't figure it out. Picture that I'm trying to upload is around 200KB, so it's definitely not a file upload size issue. I also checked files directory permissions and it's fine...

I tested Media on vanilla Drupal and there is no problem uploading images. I don't have problems with aGov distribution either.

Can someone, please, make a fresh build and test if they can upload images?
Any help would be appreciated! Thanks :)

As a site editor I want to curate lists of content so that I can promote items that are considered important

A current project requires control over promotional items on various landing pages. This control includes:

  • the ability to promote arbitrary items to various promotional areas within the site
  • the ability to control the order of the items in these lists
  • a usable interface for adding, removing, and sorting items.

This functionality has come up in a number of projects, and is a common requirement when using landing pages with promoted content.

Node queue http://drupal.org/project/nodequeue would appear to satisfy these requirements.

As a user attempting to login, when I get my password incorrect a number of times, my status becomes blocked, and Drupal does not then send password reset emails.

Seemingly an issue, when some users are entering incorrect passwords, after a certain number of attempts, their user status changes to Blocked, and then Drupal doesn't send password reset emails.

This causes confusion as the password reset form seems to indicate that an email was sent successfully.

We should look into this, and work out whether this is able to be solved?

Error thrown when changing appearance settings

Warning: Invalid argument supplied for foreach() in _iconomist_settings_submit() (line 313 of /Users/brian/Sites/devdesktop/govcms-7.x-2.0-beta1/profiles/govcms/modules/custom/iconomist/iconomist.module).
Warning: Invalid argument supplied for foreach() in _iconomist_settings_submit() (line 330 of /Users/brian/Sites/devdesktop/govcms-7.x-2.0-beta1/profiles/govcms/modules/custom/iconomist/iconomist.module).

Missing dependant modules for image slider

Two parter:

  1. The dependent modules for FlexSlider Picture are missing (FlexSlider and FlexSlider fields)

This seems odd as I can't see any modules that are relying on FlexSlider picture? So I can't enable it, and nothing appears to be using it.

  1. Image slider functionality
    FlexSlider came up in my research for a pre-built image slider (the others being Views slideshow and jCarousel). Is this functionality met elsewhere?

ClamAV prevents upload of file when not using the distribution on govCMS hosting platform

Using recent build on a local laptop the anti virus protection fails and prevents the upload of a file into the system.

I have to go to configure clamav to ignore files when it is turned off. This may not be clear enough to a person playing with the distro in their own environment.

Not sure of the solution, whether it is disabled by default publicly, or the error message can be a bit more useful?

Improve Webforms functionality with modules HTML Mail and Mime Mail

The current webform email functions of "Send e-mail as HTML" and "Include files as attachments" are not working as indicated.
webform

As recommended by Acquia support, I'm requesting the following two modules to be added to improve the webform email functionality.

Currently we require attachments to be added in the email from the submission of the webform, in order for our CRM to store the necessary data. The two modules mentioned above will greatly enhance the webform email functions for further customisation.

Robots.txt changes break travis tests

Since we introduced the robots.txt module, this tests have begun failing because behat cannot obtain a robots.txt file from the install.
Behat failure

It would be ideal to fix this so that we can accept pull requests knowing it is not impacting robots.txt.

Clean up govcms.info or Set up a simple test for govCMS profile

In current govcms.info file, the followings lines indicated that we provide a simpletest for govCMS testing

files[] = tests/govcms_test_base.inc
files[] = tests/govcms.test
files[] = tests/govcms_metadata.test

However, we don't have those files under tests folder.
Instead, under "build" folder, we can find govcms_test_base.inc and govcms.test (buggy - not working while move them back to "tests" folder. see screenshot)

This brought confusions to site builders and contributors

Consider ckeditor_link module over linkit

While LinkIt provides a fairly rich interface, I have found that it can be confusing having the standard Link/Unlink buttons towards the left of the CKEditor toolbar, and the LinkIt button all the way on the other side. CKEditor Link provides similar functionality, but merges with the existing Link button. Has this been considered as an alternative?

Other points to consider

  • CKEditor Link also provides a text filter comparable to Pathologic
  • LinkIt is currently incompatible with editing Paragraphs that have been loaded via ajax (ie. after pressing edit)

Build a stable release

We've been running beta releases for a while now and we should really be moving our efforts towards making a stable release. The next steps in that process are:

  1. Create a Milestone (RC1?)
  2. Tag existing issues in the issue queue with the RC1 Milestone that should be fixed before making a stable release.
  3. Create and tag new issues that are blockers to a RC1 Release
  4. Create new issues that are blockers for a stable release (but maybe present in an RC1 release).

Database Configuration - required fields prevent form submission

Posted by tomz0r on July 14, 2015 at 4:13pm

/install.php?profile=govcms&locale=en

Having required="true" on the hidden form input fields is preventing the form from submitting. When you select MySQL as your database and fill in all the visible required fields, you also have to fill in dummy data in the PostgreSQL fields as well to be able to continue to the next step.

required_fields

Build Fails

Hi,

Congrats with the release!

I'm following the instructions on github, but have troubles trying to make a build with the command:

build/bin/phing -f build/phing/build.xml build
Execution of target "make:local" failed for the following reason: /var/www/govcms/build/phing/build.xml:287:38: Drush exited with code 1
[phingcall] /var/www/govcms/build/phing/build.xml:287:38: Drush exited with code 1
[if] Error in IfTask
Execution of target "make" failed for the following reason: /var/www/govcms/build/phing/build.xml:225:12: Error in IfTask

I've tried it on several Linux machines and the outcome is always this. I would be very helpful to any directions towards solving this.
Cheers!


Hey pkil,

Thanks for your reply.
There were no errors while running this command (composer install --prefer-dist --working-dir=build), what I currently get is:
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Nothing to install or update
Generating autoload files

PhantomInstaller\Installer::installPhantomJS

  • Installing phantomjs (1.9.8)
    Loading from cache

Don't think you can tell anything from this?:)

Btw, I'm running Ubuntu.


govcms_tags module contains an undeclared dependency

govcms_tags module requires zen base theme to function properly and may throw a WSOD on tag pages if zen is not enabled.

This is caused by a hard-coded panel layout in line 37 of govcms_tags.pages_default.inc:
$display->layout = 'zen_no_wrapper';

It was noticed while building blog.data.gov.au.

As a site user I want the social media links to be accessible so that I can read them with a screenreader

Two changes are needed:

  1. Markup currently has two separate tags per social link. this would make a screen reader read out "Facebook. Facebook. Twitter. Twitter." etc.
    This needs to be made to use one tag that wraps both, or even remove the text completely as there is a title and alt text on the image, which is sufficient.

  2. Facebook, Twitter and YouTube's logos are all not in compliance with their current branding guidelines. See attached for updated images, note this are in higher resolution than the current so we can provide support for retina devices - ideally by using the "srcset" attribute on the tag.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.