Posts Tagged “portfolio”

I wanted to include a place for users to upload/archive files (of all sorts), to serve as a simple ‘user portfolio’ section of the site. I played around a bunch with some of the file management modules for Drupal, and the site was getting more & more complicated; and I finally came around to the “keep it simple” mantra that I’m trying to use to dictate the rest of the site’s design.

Fortunately, the Views module came to my rescue again, here coupled in use with Drupal’s built-in taxonomy. I came back to the idea of providing users with a single entry type - blog posts (allowing attachments); and use Views and Taxonomy to provide ways of viewing and organizing blog-post attachments.

Below, are the Views settings for a “my public files” page:

filters:

____________________

I created an “exposed filter”, to permit the user to select their attached files by tag:

______________

and created a page layout in table form:

_______________________

This view collects all files that the user has submitted as attachments to blog posts, into a table on a single page; renders these sortable by name, upload date, tag; and searchable by tag.

The Views module will permit many different ways of viewing the collected files - e.g., views could be created for “my published files,” “my unpublished/private files,” “all users’ files,” “my buddies’ files,” &c.; and could include exposed filters to further parse display.

I’m quite happy with how all this worked out - it feels like a very organic solution from the users’ end. Rather than creating a dedicated file upload/archiving corner of the site, files are contributed through the blogging interface (as either public or private/unpublished blog posts); and are merely displayed and organized through this interface.

Comments No Comments »

A key feature of this site, is reliance on the wonderful Views module for Drupal. This permits display of the community blog with various filters applied (all posts, user’s posts, buddies’ posts, &c.), in various modes (full post, table/list view with various fields displayed), in variable sort-order, &c.

I’ve created several views of user-submitted material, as seen in the “Community Blog Views,” “Views of My Groups,” and “My Stuff” menus.

e.g., below are the settings for the Community Blog (list view) page:

access: authenticated user
Provide page view - checked
URL - blog/community_blog_listview
View type - table view
fields:

filters:

____________________________________________________________________

note that this will display both Blog posts and feed item nodes generated from the feeds collected by the Aggregation module. The latter is made available to users who have outside blogs, so that users can aggregate feed items from their outside blogs into our community blog. (The other aggregator module I have installed - feedapi - will be used for news feeds, which will not be incorporated into the community blog, but rather displayed elsewhere on the site).

sort criteria:

Comments 1 Comment »

We made the decision to restrict access to our site to authenticated members of our academic community. I have to admit that I do find myself a bit muddled on the whole issue of transparency / transparent life. Perhaps having been raised in the rural Midwest, and spending much of my adult life in downeast Maine - geographic locales where personal privacy is perhaps pathologically emphasized - has unduly influenced this ;^). When introducing blogging/journaling/portfolio production into an academic community, further issues come forward, and frankly, I’m confused by it all. The issue of the transparent life has come upon us rather abruptly as transportation and communication technologies have become more sophisticated and available; it will be the task of the next several generations to sort out the hows/whys/ifs/whatnots/inevitabilities of this.

I’d love to see some discussion on this topic. I’m sure there’s a lot of it out there on the ‘net. Thanks to folks taking the transparency option :^).

But anyhow -

In Adminster > Access control, I’ve given “anonymous user” no privileges, including no access content privileges in the node module section. Non-logged-in users will see only an “Access denied” page with login fields.

Prior to denying “anonymous user” node module > access content privileges, it is important to assure that you will not lock yourself out of the site! This is easy to do with Drupal (or perhaps I’m just particularly skilled at this …), and you’ll find a lot of desperate “help” messages in the Drupal forum on this issue. (You can get to a login page using http://yoursite.com/?q=user , if you are so unfortunate). But before denying “anonymous user” access, activate the LoginToboggan module; then go to Administer > User management > LoginToboggan, and set the Present login form on access denied (403): radio button to enabled.

I have been playing around with Drupal 6.x. It is not yet ready to go for this application, as several of the necessary modules have not yet been made 6.x-ready. But its granular permissions structure may permit greater flexibility - permitting users to elect to make some content world-visible while holding other content within the authenticated-user community. It’ll be fun to mess with when module development catches up.

Access control for “authenticated user” should be straightforward. In the node module section, I’ve given permission only for access content, create group content, and edit own group content. In the Aggregation module section, I’ve given permission for manage aggregation feeds, manage aggregation items, manage own feed items, and view aggregation items. Users can post only 2 kinds of content - Blog posts, and imported feeds & feed items from their external blog. This reflects in part a decision to keep it simple. As a postgraduate school, we have many students of the cyberphobic demographic; too many options could discourage use. (also - the Books node is reserved for administrator use for Help pages; the Stories node is reserved for administrator use, for the 2nd aggregation module - feedapi - to aggregate news feeds for the socially-rated news section of the site).

I’ve given creation and attachment permissions for audio files in the audio and audio_attachment sections, so that users can post streaming audio into their blog postings.

User use authorship needs to be enabled in the Authorship section, to associate full names with posts, rather than usernames (this option will be configured in the Authorship module admin).

Override node publishing options needs to be enabled in override_node_options module section, to permit users the option of posting unpublished posts.

Other permissions should be intuitive, but I’ll visit a few of these in turn as I get around to discussion of specific functionalities of the site.

Comments No Comments »

There are a lot of good themes for Drupal, but my needs were for something pretty clean and ‘academically professional.’ When someone ports the Mandigo WordPress theme (used on this WP blog) to Drupal I’ll jump for joy! But I found the Sky theme for Drupal, which I’m quite happy with. Find it in the Drupal project repository here.

Now there’s a trick with this theme - if all of your active blocks are configured in the right sidebar region, you’ll have a right-sidebar theme. However, if even one of your blocks is placed in the left sidebar, they’ll all show up on the left. (This is only apparent after you leave the blocks editing page; as on that page, all sideblocks show up on the left anyway, regardless of where you configure them).

I did a minor CSS hack on the theme, as I chose to close up the vertical height in the menu blocks a bit, so they’d look a bit tighter. So I opened up Sky/style.css, found all the line-height references in the sidebar section (starting around line 121), and changed these to 20px. Be sure to find the several references to line-height and change each of these.

The header image is bg-header.jpg, in Sky/images/ , and measures 120×960 pixels (note that the bottom 35px of this image will be masked by the primary links menu). I edited my pic in the most wonderful Graphic Converter, and saved optimized for web to minimize download time for users. (btw, the main header image on my Sandbox site is of the beautiful stream in Mostnica Gorge, near Stara Fužina, Slovenja).

After the theme was all configured and basic setup of the site was complete, I created several clones of the theme, naming each Sky-whatever, in the themes directory; differing from each other only in the header image. When Organic Groups are set up, the group author is able to select a theme for their group page from the list of activated themes; having a uniquely identifying header graphic for a group is a nice touch. But wait to do this until most of the rest of the site is configured, as some configuration steps will alter theme settings; and the voting module (for social rating of news feed items) requires a couple of minor hacks to your theme template files.

Comments 1 Comment »

I made the 2 following minor module hacks to improve the user interface on the blog editing page:

Audio module
be sure to use:
audio 5.x-2.x-dev (or later)
- which permits audio file upload & streaming audio in any node type, so that users can upload streaming audio to blog posts

The audio attach section added by this module to the node (e.g. blog) editing page is a collapsible section, but by default is expanded. This presents additional options on the page which might be confusing to the novice user; I’d rather have this section collapsed by default.

find audio_attach.module, in audio/contrib/attach/
at line 76, add ‘#collapsed’ => TRUE
so that this line reads:
$form['audio_attach'] = array(’#type’ => ‘fieldset’, ‘#title’ => t(’Attached audio files’), ‘#collapsible’ => TRUE, ‘#collapsed’ => TRUE);

Override Node Publishing Options module
I’d like to give the user the option to toggle “published” on/off, but not offer the options to promote to front page, make sticky, or create new revision.

Find override_node_options.module, in the override_node_options directory.
Comment out lines 28, 29 and 30, so that these read:
// $form['options']['override_publishing_promote'] …
// $form['options']['override_publishing_sticky'] …
// $form['options']['override_publishing_revision'] …

Comments No Comments »

Additional modules - from http://drupal.org/project/Modules - include the following (be sure to use the latest 5.x releases of each):

modules on which there are essential dependencies:

job-queue
token
workflow_ng

modules lending functionality to blog posts:

authorship
override_options
image
img_assist
upload
upload_preview
tinymce  fckeditor - (there is a fatal conflict between tinymce and the updated jsquery.js required by extra_voting_forms)
audio - be sure to use audio 5.x-2.x-dev or more recent

for user management:

userplus
site_user_list
(blogger - not in use, but might be nice esp. on smaller sites)

groups & buddies:

buddylist or buddylist2 (I’m using buddylist)
og (organic groups)

page construction:

views
insert_view

taxonomy/tags:

tagadelic

for rss generation out of an authenticated site:

tokenauth

to import/aggregate external feeds:

aggregation (the included aggregation_views)

login:

logintoboggan

—–

There are some important configurations & a couple of hacks on some of the above modules; I’ll go over these in subsequent posts.

Comments No Comments »

The site (http://sandbox.similibus.org) is built in Drupal 5.7. Drupal version 6.1 is now available, but some of the essential modules for this platform - Views, Organic Groups, Aggregation, &c. - are not yet available in their 6.x incarnations. I’ve been playing with the 6.x release elsewhere, and I suspect that the new granular permissions structure will lend some advantages to a site such as this one, once these modules have caught up with the development cycle.

modules in core that are enabled include:

blog
blogAPI
book2
comment
menu
profile
search
taxonomy
tracker
upload

Comments No Comments »

I’ve set up a clone of this project, as a demo/sandbox site, at:

http://sandbox.similibus.org/

I’ve installed Drupal’s ‘demonstration site’ module, so the site will be wiped clean periodically - so feel free to create an account, poke around, add content (no spam!) - and offer feedback on the project.

Comments No Comments »

I’ve been developing a community blogging platform for my institution, a postgraduate college of ~500 students. We’ve been successfully employing Moodle as a learning management system built around individual course offerings, but wish to extend the functionality of this with a platform to support integration of learning across course offerings, permitting student journaling, community discussion, and lodging of ‘learning artifacts’ both for individuals and for sharing within the learning community.

We’re constrained by cost (budget = $0 plus or minus a few bucks); by having a population of students somewhat older than the demographic to which web-savvyness comes by default; and by having a faculty with only a few potential early-adopters of digital technology.

My vision for this platform, includes:

  • a journaling/blogging component, permitting public student journaling, with the option of private journaling;
  • the ability to create sub-groups orbital to the full community;
  • some form of portfolio development for students, with the possibility of archiving both private and public ‘learning artifacts’
  • the expressed desire of constituents to restrict access to our institutional/learning community

I’ll detail in upcoming posts the construction of our site, which is now in beta-user testing status, and readying for limited launch at the start of spring term in April.

Comments No Comments »