Multiple content creation on a single page in Drupal - drupal

I want to allow the user to create 10 content nodes on a single page instead of clicking on "add a new node each" time. This is just to save the users time when he/she wants to create 80 nodes at one time.
Is there any such module which supports this functionality or will I need to write a module for my own?

The first module I can think of (reading your description) is Nodes, which is described using the following text:
The Nodes module allows a user to edit multiple nodes at once. The module provides a simple table layout, similar to Editview, so that multiple nodes can be seen at once, and quickly and easily edited.
Changes to a node are done using AJAX like calls, so that as each field is edited, it is changed on the live version of the node. This means that any edits that take place are not submitted in bulk, and therefore any problems that arise as editing takes place can be dealt with on a field by field basis.
Unfortunately, the project doesn't have any public release.
Editview, referred in the description, is a Views plugin that allows to create a view where all the listed nodes are editable.
Other modules you can find on drupal.org are:
Mass Content Creator
Node Repeat, which allows to create duplicates/clones of nodes
Multiple Node Add

Slickgrid can be used for this purpose.

Related

Drupal 7 - Functionality for multi-select of nodes and then action to send email to a manually entered email address

I have a webform setup along with a rule that creates a new content type called 'Idea' with most of the submitted data (so that comments can be made on node of type 'Idea')
The webform is for new ideas for the business and depending on the idea it then needs emailed to the correct person in the business so they can respond.
I know a way of doing this would be to create a drop-down list in the webform and assign an email address to that record (eg. IT > (email would go to > it.dave#company.com) but they don't want it to be in the control of the user in case they select the wrong person for the webform submission to go to, they want to be able to manage this themselves manually.
What is the best way to approach this?
I was thinking, is there some sort of multi-select option where you could select one or multiple nodes from the content page and then manually enter an email address, hit a submit button, which emails them.
They want to be able to enter the email part manually and not choose from a list as it may end up going to a large range of different people, not one of a pre-determined list.
I was possibly thinking if rules or workflow or workbench might help but never used the last 2 before, but if someone knows of a way that might be best to approach this it would be appreciated.
Step 1
Use the Rules module to create a Rules Component, which includes whatever Rules Conditions you might need (if any), and with a Rules Action to Send an eMail, for each of those fields you want to be updated.
Step 2
Create a view of the group of nodes for which those eMails should be generated. Then transform that view into a view that uses Views Bulk Operations, and use the technique documented in "How to use Rules to create a custom bulk operation for a VBO view?". In doing so, you'll then be able to use the Rules Component from Step 1.
Tutorial
To get the idea, have a look at the video about Using Rules components with VBO" which uses a Rules Component with (only) 1 parameter. If you want even more, then also watch the subsequent "Using Rules components with more than one parameter" video.
Attention: to process like 100.000 entities at once is quite a challenge (memory requirements, etc). Therefor you might want to also watch the video about "More details about VBO settings" ... Before you are tempted to use VBO for processing them all at once ...

Drupal 7 Views : How to reuse one view for multiple fields OR how to let user select which field view displays?

My Task: I have content type which have 100+ different mostly numeric fields (big questionnaire for NGO with yearly reports). For one field I can use Views module to let user select which reports include (for example one year) and display it as nice graph (using for example Views+Charts). I would have to define about 100+ nearly identical views, which differs only by what field data they use.
My Question: Is there any way how to reuse one view definition and just change data from which field id display?
Solutions so far: I found two not really good solutions:
Create one view, export it (using Features or similar way) and then clone this export, rewrite field it uses as source and than add. But this just speed up creating one view for each 100+ fields.
Use module Views Dynamic Fields - it allows user to select which fields to display. But I would still have separate definition how to display for each field, so not much better than add one view for each 100+ fields.
I suggest writing your own Views field display plugin! This is actually all documented within the Views module folder: views/docs/views.api.php. Depending on your fields I'm not sure how you would exactly connect the data to the view.
Another alternative would be to just use a PHP Code field, and figure out a way to programmatically display the data from the field you wanted. The downside to this is that you wont be able to use that field to sort/search on with any filters as far as I know.

How to additionally filter list of published nodes in Drupal 6

I need to adjust the way which a content is determined as published or not published. The editor of particular content (this is a separate non-administrative role) should have a possibility to set the published flag for particular node (it can be achieved using Override Node Options module directly or by implementing it's techniques). He should also be able to set two additional publication attributes, i.e. publication start date and publication end date (the fields can be added using Content Construction Kit). These optional fields should be used to determine node's published status. Let's say that if specified, they will override published flag.
Basically I would like to be able to add my bits of SQL code to the WHERE section of proper query or to postprocess result of such query. Maybe to overwrite some function or provide some callback. Solutions based on writing of custom modules are fully acceptable.
I am using Drupal 6.
It sounds like one of either the Node Expire or Scheduler modules should do what you need.

Finding information about fields in Drupal Views

I have a node type with multiple file attachments and would like a node view to show the latest file attached to the node.
In Views, I have options to sort by node:updated or revision:vid, but of course they don't tell me which file was added last. Is there a way to sort by the updated time of a field?
And, more generally, is there a way to find information about changes to parts of a node.
There is no revision records for individual CCK fields that I've ever heard of. I think I saw a blog entry about someone thinking of writing a module for it.
Here's how you get the file upload date into a View:
Create a Relationship with the particular FileField you are interested in.
In Fields there will now be a File category. It includes File Upload Date.
In Sort criteria there is also a File Upload Date.
If you also restrict your View to a single node, that should do it.

Drupal: Upgrade Node strategy

I effectively want two nodes:
Normal Node
Premium Node
The only difference will be that the premium node can take more images and a few other features. What is the best strategy to go about this?
have two distinct nodes with the differences
have one nodes and somehow find a to apply an UPGRADED attribute to it?
I would prefer (b), as I want users to be able to upgrade nodes. And migrating a normal node to a premium node will be very difficult.
Any idea how I can accomplish b?
I would create two different content types (CCK), and either write custom code to translate between the two or use a module like Node Convert (in order to upgrade a node); it might be complicated at first, but you would have the advantage of being able to apply all of your restrictions (allowed image count, permissions etc) on a per-content type basis.
Here is an excerpt from the Node Convert project page:
... adds a menu tab "Convert" on the node view page, i.e. node/1/convert, which gives the ability to convert the node from its current node type to another node type. The module provides the means to transfer all the field values of the current node type into fields on the destination node type, or discard them.
The module integrates with Actions, Rules, Views Bulk Operations and Admin Views nicely. It has support for exporting templates into Features using CTools Exportables. It also provides a hook that enables developers to execute additional code on conversion.
You might be able to implement (b) as two different input filters - one for non-upgraded and one for upgraded. Then "upgrading" the node would be as simple as changing the input filter applied to its contents.

Resources