I collect vinyl records, yes they still make them! To keep this short, there isn't a good website to catalog music that is specifically catered towards vinyl -- I want to change that. I started creating a website like that this morning. I installed Drupal and it was a breeze thanks to the documentation on this website. However, I've become a little confused in picking up the modules that will best suit my needs and I wanted to request some assistance.

First let me show you what I am aiming for, because my previous description is rather vague.

http://recordnerd.com/lists/scottauth

That is a link to my record list on another website that I would like to model. Recordnerd is pretty much exactly what I want, but the website is broken and I don't think the webmaster wants to maintain it anymore.

I'm really fond of how Recordnerd splits things up, for example, when you enter a record you can choose its physical size like a 7" or a 12" and then it sorts it into a section specifically for 7"s and 12"s. Furthermore it will even sort them based on status: if the record is "For Trade", "Not For Trade", or "Wanted." Again, click the link above to see an example.

I installed the CCK module in Drupal and I have created a series of fields. The "Album name" is the Title and the other fields include: Artist, Record Label, Year, Color, Pressing Info, Status, and Comments. I think I'm correct in using CCK, but I could be wrong, thus my post. I've searched quite a bit, but I'm still not 100% certain.

I'm also confused about formating my inputs. Currently it looks like this:

Album title: Pinkerton
Artist: Weezer
Record label: Geffen
Year released: 1996
Type: 12"
Color: Black
Pressing info: 1st pressing
Status: Not for Trade
Comments: Autographed

I would like it to show up similar to how Recordnerd's does, in a table going across. I installed the Views module, but I think I was barking up the wrong tree. I also installed Content Template and I think that may be correct, but I didn't want to get too far into things if I'm wrong. Ideally, I would like to be able to sort those fields on the fly via any field title.

I don't want to clutter this post with too much information, so I will leave it at that for now. As these answers will help me get off to a good start. I apologize if this information is elsewhere, I did my best to search, but I couldn't quite find exactly what I was looking for.

I did find a forum post from 2005 from another person describing a very similar idea, but it seemed like a dead end (http://drupal.org/node/21011).

Thanks in advance,
Scott

Comments

BradM’s picture

You're on the right track...

Views will do what you need, but it can be a little complicated to figure out. You want to create a view that is in table form.

Then, choose the CCK fields you want to use in the view, and they can be placed (as in how the data appears on each line) based on the position you place them within the view setup. There is also a sorting option in views, where you can set up the sorting criteria you want (as in first by Status, and then by Artist.)

Then, use the theme wizard in views, choose the view you created, and have it generate the necessary files (one will be saved as a .tpl.php file based on the view name, the other will be code added to your template.php file.)

I know this is a very basic way to explain this, but I'm still getting the hang of views myself. As far as Content template, it is useful if you wanted to link each entry in your main view to it's node page. Then, you can use this content template module to modify the node to your heart's content. :) But it won't have any affect on the actual list of your entries, that's all done by views.

Brad

scottauth’s picture

The info on the Theme Wizard was something I missed earlier, I'm glad you pointed it out. Thanks.

scottauth’s picture

Now that I have my views setup, I want to change the design a bit.

When I generated the view it gave me the code for the .tpl.php file as well as a .css file, however it didn't tell me where to save the files at. I saved them in /modules/views/, however, when I was making changes to the .css file nothing was happening to my list.

Did I save them in the correct places or am I doing something else wrong?

Scott

BradM’s picture

Just put them in your theme directory (ie. /themes/bluemarine/) -- if you have more than one theme, you'll have to copy the files into each theme directory that you want to use the view in.

BTW it should have also generated code that is to be copied into your template.php file, along with the other stuff you mentioned.

scottauth’s picture

I did copy the code into template.php and I placed the files in /themes/garland, but any changes I make in the .css are still not being reflected. What calls the "views-list-lists.css" file?

I apologize for asking a lot of questions.

lelizondo’s picture

read (if you haven't) the views getting started.. http://drupal.org/node/109604, you'll find out it's very easy to use.

You'll need content template if you want to theme a node, but first create the view. You can do what you want using only cck and views and maybe some cck modules (like date and imagefield). When creating a new view, select the "provide page view" option under page, give it a name and a url, select table view as view type, then on fields add the fields you want, you'll need maybe the node:title, node:type, taxonomy: all terms, and the cck fields you created. THen use the filters to filter your view, I always use the node:published, node:type, and taxonomy: terms.. if you want your visitors to filter on the fly select the "expose" option next to the filter you need. apply some sort criteria and save.

Good luck...

Luis

Luis

scottauth’s picture

Thanks for that link, it helped a good bit, but your description was great too!

scottauth’s picture

Ok, I've made a small mistake...

When I entered album information it all goes to one central location. Instead of it being user specific. For example, I used my admin account and added a few albums, then logged out and created another account and when I went to add a record it was the admin's database.

What steps would I take so that I can have different lists for each specific user.

lelizondo’s picture

use a filter to show only the content from the currently logged user.

Luis

Luis

BradM’s picture

yeah, there should be a filter for 'node author' or something like that :)

scottauth’s picture

Thanks for the info, I found the filter and that works great, but it's not exactly what I am looking for. Let me explain a little further...

When a user logs into the website I want them to be able to create and edit their own record list. Right now when I log in as a user (not the admin account) I click a link titled "Create a Record List" which has the url /node/add/lists. After the data is entered there is the confirmation and all that jazz. Now to view the list I follow the url /view/lists and I can see all of the data, which is great. However, that person doesn't have their own distinct list that anyone else could look at.

What I want is something like http://www.drupalrecordwebsite.com/lists/username

Thanks again if you can provide any info.

lelizondo’s picture

try the nodeprofile module or the usernode module, the usernode module lets you manage a user as node.

with nodeprofile and CCK create the fields required to create the Record List, so the user can create a list inside it's own profile, but that could be a problem if you want more than one list.

My second suggestion is to create a view and expose a filter by author so anyone can choose the author's list. Maybe this is the easiest way to do what you want but maybe it's not what you're looking for.

Try both ways and let me know how it goes. I'll try to think of any other ways you can do what you want.

Luis

Luis

BradM’s picture

I had thought that if you use filter / Node: Author is Current User it would automatically display only those nodes created by the user viewing the page?

I haven't tried it but it makes sense...

If you want something like http://www.drupalrecordwebsite.com/lists/username then maybe try the Argument / User: UID is Author or User: Username is Author which I think might give you the URL style you're looking for...as this info is somehow parsed from the URL. Not sure how to set the variables up for this tho.

Brad

scottauth’s picture

I added the Argument "User: Username is Author" and now it shows up just how I wanted it to! I was racking my brain on that one and the answer was so simple!

Flagio’s picture

I was wondering if it's possible to extend above standard data of a vinyl record with relational data, like track titles, artists & times? Perhaps even the ability to add role info (like written by, produced by) per track title.

Would this be possible within Drupal and those modules you mention?

Thanks in advance,
Flagio

zywieco’s picture

SonyBMG Launches MyPlay on Drupal:

Since the site is based upon our Artists, these are essentially the "master" node types, in that the Album, Video, and Photo content types contain a node reference CCK field to the Artist of which they are an asset. The Album content type then has an asset of Track, creating an hierarchy as follows...

etc.etc.