Hi,

I've upgrade panels from 6.x.2 to 6.x.3.
In 6.x.2 version, there was a "contributed modules" section, where I could select 'Signup form'.
This section is not in panels 3 ; and the other categories don't offer this pane...
Have I missed an option somewhere ?
How can I show signup dorm in pages made with panels ?

Thanks,
webanalya

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

webanalya’s picture

Title: SIgnup form disappears from panels » Signup form disappears from panels

Hi,

I up early but a question hangs over me

I don't know if I've posted in the appropriate project.
Perhaps, should I re-post in panels ?

I don't know where is define what is show in panels : in each module's code or in panel's code ?

thanks

dww’s picture

Title: Signup form disappears from panels » Expose signup form to Panels 3
Category: feature » bug

This is the right project. The Panels API changed a lot between Panels 2 and Panels 3. The old support here was for panels 2. It needs to be ported to use the new API.

webanalya’s picture

ok
thanks for this information !
Now, I know I have a correct configuration and I have a solution : I must wait...

webanalya’s picture

Hi,
I'm a novice: I have an idea but I don't find the piece of code I need.

If the form appears in the node, I should be able to call it in a custom pane in php. But I can't find what makes the form appear !
Do you think this would be a solution? and what is the part of code I must past in a new custom pane?

Thanks

julma’s picture

Before the integration with panel 3 was ready, someone know how to do it with a php snippet ?

willazilla’s picture

Priority: Normal » Critical

That the ability to have sign ups in a panel (Panels 3) is completely missing is, I think, a critical bug to fix. (At least for my clients. :) )

Anyone know how to fix this? (I'm a newbie at PHP, so outta luck there.)

HunterElliott’s picture

I'm looking for a solution to this as well! Will this ever be available for Panels 3 in Drupal 6?

dww’s picture

Priority: Critical » Normal

@willazilla: Re: "That the ability to have sign ups in a panel (Panels 3) is completely missing is, I think, a critical bug to fix. (At least for my clients. :) )"

Just b/c it's critical for your clients doesn't make it critical for me. ;)

@HunterElliot: Re: "Will this ever be available for Panels 3 in Drupal 6?"

Yes, as soon as someone either:

A) Writes the code and posts the patch here

or

B) Hires me to do so

I'm super busy with tons of other things the past few (and next few) months, so I have no time for free labor on signup.module these days. Since I'm not using signup + panels anywhere and therefore this bug doesn't personally effect me, I have no reason to work on it unless it was going to help pay the rent.

Cheers,
-Derek

developer-x’s picture

Hey,

Just saw this post here yesterday. I'm pretty new to drupal (just a few months), but thought I'd get my hands dirty......

Anyway, I've fixed this issue - the signup form now shows up in the panel selection and appears in the node when signup is enabled (actually had to fix a bug here). The question is how to patch this - I ended up hacking the module files directly. Obviously not good - so I need some guidance how to apply this fix following drupal practices.

Thanks in advance.

- x

dww’s picture

@developer-x:

http://drupal.org/patch

make a patch file that includes your changes to the signup module code, attach that file to a comment here and set the status to "needs review".

Thanks,
-Derek

developer-x’s picture

Status: Active » Needs review
FileSize
4.39 KB

Here ya go....

BTW, thanks so much for your effort putting together this excellent module!

- x

developer-x’s picture

Also,

I don't know if anyone would find this helpful, but if you are adding this to a panel with rounded corners and you don't want the rounded corners to show if there isn't a form, then add this snippet to the php-visibility rule for that pane:

$object = $contexts ['argument_nid_1'];
$object = $object->data;
return _signup_needs_output($object);

remember - you must exclude the php tags.

- x

gilcpd’s picture

Great Im gonna test it and let you guys know if something when wrong :)

Thank you very much.

gilcpd’s picture

I'm sorry guys im clearlly doing something wrong... but I'm trying to patch with CYGWIN and it always gives me the same error "Cant find file to patch at input line 3".

I put the Patch on the root of Modules, I also tried to put the patch on the Panels and on the Ctools folder, I added a image with the error.
Am I doing something wrong? :S

Thank you guys :)

gilcpd’s picture

FileSize
51.43 KB

Oops forgot the image :P

developer-x’s picture

According to the instructions I was referred to, I issued the patch command from the modules/signup directory:

Contributed module/theme patches: Run the diff command in the module or theme's root directory. (Example: /sites/all/modules/foobar)

So, try running this from signup directory and see if that does the trick

- x

gilcpd’s picture

Great I tested yesterday, and it seems to be working fine :D I havent seen any side effects so
Developer-X THANK YOU VERY VERY MUCH! :D

developer-x’s picture

My pleasure. Glad it worked with no problems.

Derek - what are the next steps in integrating this fix?

- x

willazilla’s picture

Holy Cows and Yay!!!!! Thanks for the tip on Panels too! You rock, -x !!!!

Oh, And, Derek, please accept my sincere apologies. This year is my first real run at how to work with things that fall down in this user community. I certainly did not intend to be rude. As -x said, Thank You for putting together this fantastic module.

hlan’s picture

FileSize
188.43 KB

Hi

I tried and patched it but for some reason I still cannot see in my Panel-> Node section. I didn't get any error at all when I patched it.

I also attached the screenshot of my panel add content.

Please advise.

Thanks in advance,
Hlan

monti’s picture

Have got the same problem here -

no errors patching using developer-x's above patch, but signup would not show up anywhere under panels' content.

panels-6.x-3.3
signup-6.x-1.0-rc6

Any idea?

developer-x’s picture

I looked into Hlan's issue - still no resolution. But one thing to check, the signup form in panels requires a node context - so it will only show for Panel Nodes and Node templates - Panel pages won't have the signup option. Also, the option will show up under the "Contributed Modules" tab.

- x

maddentim’s picture

I successfully applied the patch and it appears to be working. I will test it over the next week or so and report back if I find any issues. Thanks -x!

Draven_Caine’s picture

I commited this patch earlier today. And I still have no luck with signup and panels playing nice, sadly.
It is said that it requires on context, I am using the node_view panel for this that comes with panels.

Is there any way someone could patch it and re-release this as a full module, just in case I did something wrong while patching it?

Thanks,
Draven

maddentim’s picture

Draven_Caine, I think you must me you "applied" this patch. After I applied the patch, I went into the 'edit content' part of my panels page. I then went and did "add content" and in the popup, there was a new section on the left called "contributed modules". The only thing in there was the signup form. I added it and I was in business.

I am not sure about any upcoming releases of this module. The last one was about 9 months back and it has been pretty quiet... If you look at the patch file in your editor of choice you can see what was supposed get changed and then look at the module code and make sure it happened. Search "drupal patch" for instructions to patch if you need to learn more.

EDIT: I don't think I had to do anything with context to use this patched sign up with panels. I guess just made sure your node_view variant includes the signup enabled content type...

Draven_Caine’s picture

Yes i applied the patch, I am very familiar with panels and ctool since my site runs a bit differently, its bypasses a lot of drupals core system with panels everywhere. I patched it manually with through a massive error, also patched it with cgywin which didn't yield anything.

In a previous posters responce he said something about you need context.

#22
developer-x - April 7, 2010 - 11:30

I looked into Hlan's issue - still no resolution. But one thing to check, the signup form in panels requires a node context - so it will only show for Panel Nodes and Node templates - Panel pages won't have the signup option. Also, the option will show up under the "Contributed Modules" tab.

- x

Is there someway you could throw me your signup folder? not as a normal release forsay just as a working panels/signup combo hehe

Thanks,
Draven

maddentim’s picture

FileSize
362.47 KB

I see what you were thinking. I think it is not actually a panels "context", but you have to use a selection rule for a node type and I suppose that these node types should only be ones that allow signup.

Sure. My panels folder is attached. drupal.org renames the tar.gz so you have to fix the filename to open. I have some custom layouts in there too, but other that and the signup patch it to the same as the current released panels.

Draven_Caine’s picture

blueprint’s picture

this patch works just fine for me ... for the form the user list for signups works just as a view ....

qgolden’s picture

Category: bug » support

I know this is an old issue but I need help. I have patched the signup.module and it now appears when I add content to the bottom panel and it shows up in the panel display setting view.

My problem is that I can't get the signup to show in a live view it won't show up in the bottom panel. I was thinking maybe a permissions problem but anonymous user is checked for 'sign up for content' permission

How do you get the signup form to showup ????

developer-x’s picture

The signup functionality needs to be associated with a Node that includes a Date field and has the Signup functionality enabled for the Content Type.

As such, in Panels, you have to have a Node Template associated with the signup enabled Node Type or have a Panels Node Content Type with a date field and signup enabled. It won't work with a Panels Page.

You'll know you have it right when the page in question shows a Signup tab.

If you have this all set up correctly - then we'll need to look at this closer. Are the prereqs in place?

- x

qgolden’s picture

I am very new to Drupal and all this talk of nodes and content types is very confusing lol.........

So I must create a node and enable signup on that node then add that node to the panel, not add the signup module via contributed modules option on the panel??

Sorry if it seems I need spoon feed but I'm still trying to get my head all the Drupal terms

developer-x’s picture

No problem - it is very confusing. I'll do my best to try to explain.

So, for signup to work, it needs a Date. Signup pulls the Date from a Node. But to create a Node, you need to define a Content Type (why it's called Content Type instead of Node Type is something that I can't answer). When you install Drupal, they give you a couple of Content Types out of the box - Page and Story. But neither of these Types have a Date - so you must create a Content Type that has a Date field.

I won't go into detail on how to create a Content Type with a Date - there should be existing documentation to help you on this. But, creating a Content Type with a Date still isn't enough - after you create the Content Type with the Date - you need to enable the Signup module to use this Content Type (when this is configured, the Signup module will add itself to any Node created for this enabled Content Type).

So - now your Content Type is configured. Now, if you create an instance of a Node for this Content Type - the "Signup settings" fieldset should appear in the edit form.

However.....

You're using Panels. Panels is kind of it's own separate thing. I won't go into a long winded explanation of Panels. But, in general, you use Panels to provide templating and layout functionality. With Panels you can just "create a Page" - but these pages are NOT Nodes (the exception is Panel Node - but I'm skipping that for the sake of this post). So Signup doesn't work with Panel Pages. But, Panels has something called Node Templates. What Node Templates do, is have Panels "take over" the rendering of a Node for a given Content Type. For example, let say you create a Content Type of "Meeting". When you define this Content Type, you add a Date field and you enable Signup for this Content Type. Now, you go over to Panels, and you enable the Node Template functionality. You tell Panels that Panels should take over the responsibility for rendering Nodes of Content Type "Meeting". So, now, when you create a Node of "Meeting", Panels will render this Node's output.

So, why do you want Panels to render a Node? Well Panels, makes it easy (relative term here), to add lots of different bits of content to the Node output (Views, blocks, menus, etc...). Without Panels, you would have to go and change the template file to add additional content for this Content Type.

However.....

If you don't use the Panels' Node Template functionality to render a Node with a Signup form - the Signup Form will render automatically - you don't have to do anything special. The patch I included fixed the problem, that when using Node Templates, you couldn't add the Signup form via Panels.

So, I'd recommend forgetting about Panels for the moment. Just create your Content Type with a Date and enable Signup for this Content Type. Then create an instance of the Content Type - you should see the "Signup settings" fieldset appear in the edit form. Enable Signup for this Node instance. Now, when viewing this Node, you should see the Signup form.

Then, if you really want Panels to render this Node, you can go to the next step and work with Panel Node Template functionality.

qgolden’s picture

Status: Needs review » Closed (fixed)

Thanks Dev-X I got it sorted. Nice one

drifter’s picture

Status: Closed (fixed) » Active

Isn't fixed yet as far as I can see, patch #11 isn't rolled into the -dev release yet. By the way, I can confirm that the patch still applies, and works with Panels 3.8.

joachim’s picture

Version: 6.x-1.0-rc6 » 6.x-2.x-dev
Component: Miscellaneous » Code
Category: support » feature
Status: Active » Needs review

Patch at 11 still applies ok on the 6--2 branch. Setting to needs review so people actually notice this.

alfiozzz’s picture

Ok what is not clear to me is:

Is it possible to have the signup form (not the signed up user list) to show up in a panel by using a view ?

I don't want a link to the signup form but the form itself to appear in the node template panel.

Is that possible ?

I've only found a way to do this: show node content in a pane, and setting signup options to embed the signup form in the node. This way the form shows along with the node title, body, location, ... | but then i dont need this clutter and i just want the node signup form to display on his own.

Is there a way to call the signup form from php and embed it in a pane?
Sorry perhaps what i'm saying may sound stupid, because i'm not so experienced yet with the drupal framework itself. Thanks for your help !

alfiozzz’s picture

anyone?

developer-x’s picture

The panel code just calls the following to generate output:

module_load_include('inc', 'signup', 'includes/node_output');
 _signup_node_output($node);

You should be able to embed those two lines of code and generate the form. Of course, you need to get a reference to the node - how to do that is dependent on how you are planning on embedding this. If it is associated with a particular node - you can always hardcode it:

$node = node_load(<nid>);

Regarding views, I don't think signup has a "signup" field or anything like that (I could be wrong - I've never looked into it - but I'd be suprised if it was there).

maddentim’s picture

For me, after I applied the patch here, I enabled panels for "node view" for the content type that I was using for signups. Then, I dropped the signup form into the node panel page that I set up. If you are using panels for the view of a node page but rather for some other type of page, you will need, as dev-x mentions, to give signup the node that you are trying to signup.

For what you described, @alfiozzz, I definitely think that you should explore the "node view". Don't be confused. I am not referring to "views". After you have applied the patch, go to the panels "pages" page ( admin/build/pages ) and you should see options for panel pages for "node view" and "node edit". The view one is the one you want. Node edit is to use panels to take over the node edit form from Drupal core.,.

kinshuksunil’s picture

hi,
I need to implement the same functionality (the sign up form inside a pane) on a production site. Is this tested and integrated in the release ? How else can I do it ?

- Kinshuk

caponey’s picture

I need this bad. I have tried to patch a module several times, several different ways. Literally spent about 2 hours trying. I even tried to manually patch it, but got hung up at the end, it looked like a line or 2 got cut off on the patch, and I didn't know what to do.

Is it possible to just get the patched files? I saw someone upload their entire panels folder lol...can someone just upload their patched signup files for some of us who don't know how to apply a patch?

developer-x’s picture

Priority: Normal » Major
FileSize
103.26 KB

Wow, I submitted this patch a year ago! How time flies ;-)

Why is this patch still in review? Is there a problem with it? If so, change the status to "needs work". Otherwise, let's get it in. I think a year is long enough.

BTW, I just tried the patch against the latest dev version and it worked. To make life easy, I'll upload the patched module - this probably violates good practices but as time goes on, there is a risk that the patch won't work. So short of committing the fix, here is a working version....

developer-x’s picture

Category: feature » bug
caponey’s picture

developer-x, thank you so much.
i'm so glad i asked for that haha, it works great!

Exploratus’s picture

subscribe.

Exploratus’s picture

worked for me.

scottrigby’s picture

Version: 6.x-2.x-dev » 6.x-1.x-dev
Priority: Major » Normal
FileSize
4.84 KB

Re-rolled #11 by developer-x as a git-formatted patch against 6.x-1.x, with only minor cleanup.

Patching against 1.x (& changing issue version) because the 2.x branch is no longer supported.

alfiozzz’s picture

why isn't this integrated inside panel3

liquidcms’s picture

patch in #11 worked like a charm for me.. apply from modules/signup

odd that this hasn't been commited but i'd guess likely difficult as it is a patch against Panels but posted in the Signup project.

scottrigby’s picture

@alfiozzz this belongs in Signup not Panels (see #2).

@liquidcms The reason it hasn't been committed is the Signup maintainers are busy on other work - not because there's any issue with panels support for Signup. That said it helps to have a patch that cleanly applies to the latest dev branch. Try #48, as it was rolled against the current (1.x) dev it should apply cleanly against it too. Please share whether or not this works for you, and feel free to mark it RTBC if it does.

rho_’s picture

Applied patch from #48, and worked great. Thanks @developer-x and @scottrigby!

  • Drupal v6.22
  • Panels v6.x-3.9
  • Signup v6.x-1.x