After updating to version 2.15 i can't create a new space (http://sitename/?q=node/add/oa-space).
It has worked with version 2.13.
Someone got an answer ?
Solution
Revert all Features after update. In this case it is the oa_core feature in particular that needs to be reverted.
Going forward
Updated docs to reflect that all features should be reverted after an updated in #13. The status of the issue is to check that the new instructions in the docs page are sound - https://drupal.org/node/2169701 - with suitable warnings that reverting features might cause customisations to be lost unless they are exported using Features Overrides.
Comments
Comment #1
mschuurman CreditAttribution: mschuurman commentedComment #2
mschuurman CreditAttribution: mschuurman commentedComment #3
Argus CreditAttribution: Argus commentedClean URLs seem to be disabled? It shouldn't make any difference but that would be the first thing I would try, go to
admin/config/search/clean-urls
to do so.Comment #4
mschuurman CreditAttribution: mschuurman commentedhttp://site/?q=admin/config/search/clean-urls results in clean-urls failed.
When i'm going to http://site/?q=node/add/oa-space i'm getting a blank screen (http5000 can't find page).
Comment #5
pmota CreditAttribution: pmota commentedi have the same problem,
( ! ) Fatal error: Call to undefined function oa_buttons_get_allowed_types() in C:\wamp\www\open.atrium\modules\taxonomy\taxonomy.module on line 1485
the best option is go to 2.13?
Comment #6
dsnopekHave you tried reverting all Features? Here's how with Drush:
Comment #7
JKingsnorth CreditAttribution: JKingsnorth commentedLet us know how you get on with that and if it fixes the issue, thanks.
Comment #8
JKingsnorth CreditAttribution: JKingsnorth commentedMarked #2215541: White page while attemp to create a new Space as a duplicate.
Comment #9
xinomilo CreditAttribution: xinomilo commentedsame error here (500 internal server error) when creating or editing a new space :
"xxx.xxx.xxx.xxx" $HOST [13/Mar/2014:xx:xx:xx +0200] "GET /node/add/oa-space/1 HTTP/1.1" 500 5 585 432 "http://$HOST/node/add/oa-space"
"xxx.xxx.xxx.xxx" $HOST [13/Mar/2014:xx:xx:xx +0200] "GET /node/37/edit HTTP/1.1" 500 5 573 577 "-"
where node 37 is type 'oa_space'. all nodes of type 'oa_space" cannot be edited and give a blank page (500 internal server error) after upgrade from 2.13.
on a clean 2.15 install, creation and editing of spaces work fine..
Comment #10
dsnopek@xinomilo: Have you tried reverting all Features? Here's how with Drush:
Comment #11
olak CreditAttribution: olak commentedreverting oa_core, fixes the issue.
drush fr oa_core -y
Comment #12
dsnopek@olak: Thanks for the feedback! :-)
I suspect this is just people not following the documentation for doing Open Atrium upgrades:
https://drupal.org/node/2169701
I know it says that running "drush fra -y" is optional, but really, it's necessary in most upgrades. Maybe we should update it?
Comment #13
JKingsnorth CreditAttribution: JKingsnorth commentedAgreed, I've changed the documentation page with suitable bold warnings about what the command will do. I hope it reads OK? https://drupal.org/node/2169701
Setting this as needs review so another pair of eyes can check it over.
Comment #14
dsnopekLooks good to me! @.John: +1 for taking the initiative. :-)
Comment #15
olak CreditAttribution: olak commentedthe problem is more complex though.
open atrium is using features, a concept that many of us are not familiar still. also it comes with some features overriden in a fresh install. so its not so easy to tell which changes are yours to put on a feature override. also oa_core was after the update to 2.15 mark "Needs Review" and after the revert, is "Overriden" which doesnt make sense.
lastly, on Aegir, drush fra doesnt work. to make it work, i revert each feature separately.
i know about the bug with alreay overriden feautures on a clean install, which seems to vary on every release.
i'd suggest to write a section on the project page, about features and feature override, and if its possible to note which ones appear as overriden on a fresh install. personaly for my next OA projects, i'd user OA as is, with no changes, and create my custom content types, sections, etc. i'm afraid that at some point after an upgrade the site will break badly and it would be very difficult to fix it
Comment #16
dsnopek@olak: That's a great idea - a warning about how some Features are currently overridden (with a link to the issue to fix) and maybe a link with an introduction to Features and Features Override would be awesome on the project page! However, editing the project page is something that only Mike Potter (and maybe other members of the Phase2 team?) can do, so we'll have to wait for Mike to chime in. :-)
As far as upgrades: I've been maintaining a site for client that that started on one of the earlier 2.0-beta's and I've been able to update it with every new release. I wouldn't say it was "seamless", there were several times that required manual intervention, but I have managed to keep it in working order!
Comment #17
Mariem001 CreditAttribution: Mariem001 commentedAdding the old function oa_buttons_get_allowed_types
/**
* Allowed values callback for using particular space types.
*/
function oa_buttons_get_allowed_types($field) {
$options = array();
$gid = oa_core_get_space_context();
// If no gid, may be using this as a filter or such.
// @see oa_subspaces_form_node_form_alter().
if (!$gid || !module_exists('oa_subspaces') || user_access('administer group') || user_access('create oa_space content') || og_user_access('node', $gid, 'use any oa button space_type') || og_user_access('node', $gid, 'administer group')) {
return taxonomy_allowed_values($field);
}
if ($gid) {
foreach ($field['settings']['allowed_values'] as $tree) {
if ($vocabulary = taxonomy_vocabulary_machine_name_load($tree['vocabulary'])) {
if ($terms = taxonomy_get_tree($vocabulary->vid, $tree['parent'])) {
foreach ($terms as $term) {
if (og_user_access('node', $gid, _oa_buttons_perm_name($tree['vocabulary'], $term->tid))) {
$options[$term->tid] = str_repeat('-', $term->depth) . $term->name;
}
}
}
}
}
}
return $options;
}
@ the end of /profiles/openatrium/modules/contrib/oa_core/modules/oa_buttons/oa_buttons.module
resolved the issue for me.
Comment #18
dsnopek@Mariem001: Did you try reverting all the Features first? I'm just trying to determine if reverting all Features will fail in certain circumstances...
It's configuration in the Features that tells Drupal to call that function, but it has changed in 2.15 to NOT call that function, so it shouldn't be necessary to add it back. Also if your OA is still calling it, there's probably other things it's doing that it shouldn't which should be fixed by reverting all Features.
Anyway, it'd be great if you could give that a try and let us know!
Comment #19
mschuurman CreditAttribution: mschuurman commentedIt's still not working after reverting all the Features.
I'm new to drupal/open atrium so please be gentle :-)
"sudo drush fra -y
The following modules will be reverted: panopoly_pages, oa_core, oa_teams, oa_sections, oa_appearance, oa_buttons, oa_config, oa_contextual_tabs, oa_layouts, oa_discussion, oa_events, oa_events_import, oa_home, oa_media, panopoly_users, oa_panopoly_users, oa_wiki, panopoly_search, oa_subspaces, oa_variables, oa_worktracker
Do you really want to continue? (y/n): y
explode() expects parameter 2 to be string, array given [warning]
features.drush.inc:674
array_shift() expects parameter 1 to be array, null given [warning]
features.drush.inc:675
array_shift() expects parameter 1 to be array, null given [warning]
features.drush.inc:676"
Comment #20
dsnopek@mschuurman: Hrm! Well, that's no good. :-/
Did you try also clearing the Drush cache? Via drush that can be done with:
Comment #21
mschuurman CreditAttribution: mschuurman commentedI have also cleared the drush cache, that didn't fixed the problem.
I have two sites: the default site and an other site in an different folder.
The default site is working correct.
The other site not.
Comment #22
olak CreditAttribution: olak commented@mschuurman
you have 2 sites on the same installation, meaning on the same sites folder?
if you have upgraded then both should have been upgraded.
also if i understand it correctly, if you revert a feauture it gets reverted for all sites sharing the same codebase.
if you are running aegir, try to revert the features one by one, not all together. start with oa _core:
drush fr oa_core -y
Comment #23
jaxpax CreditAttribution: jaxpax commentedI'm having the same problem after updating core on Pantheon. How do I fix this? I have no experience in using Drush... yet.
Comment #24
JKingsnorth CreditAttribution: JKingsnorth commentedYou can revert the features through the GUI, but it's a bit more tedious: Structure > Features: Click on a feature that is 'overridden', then select the 'Overridden' components and revert them.
Remember that you might lose any customisations that you haven't exported into Features Overrides, as stated in the docs:
https://drupal.org/node/2169701
This page is currently under review and has 1 positive appraisal in this thread.
Comment #25
jaxpax CreditAttribution: jaxpax commentedI installed Drush and went up to speed with it and it saved me a lot of gray hairs, I guess...
I saved my custom features and went along with the Clearing Cache part, all the way down to
drush fra -y
and that fixed it for me.Thanks for the help!
Comment #26
mpotter CreditAttribution: mpotter commentedFrom the release notes for v2.15 here: https://drupal.org/node/2206043
With *any* module or distribution it is important to read the Release Notes when updating. As mentioned above, it is also in the Documentation for upgrading/installing Open Atrium 2. It's also well-known best practices for complex Drupal deployments (upgrading any Drupal distribution is a complex deployment, whether it's Open Atrium, Commons, Drupal Commerce, etc).
So I'm not going to update the Open Atrium project page just to document best Drupal practices that are already documented elsewhere.