ExpressionEngine CMS
Open, Free, Amazing

Thread

This is an archived forum and the content is probably no longer relevant, but is provided here for posterity.

The active forums are here.

Building an Extranet with this Functionality.

March 08, 2012 12:09pm

Subscribe [2]
  • #1 / Mar 08, 2012 12:09pm

    UKFreelancer

    49 posts

    Hi,

    I’ve started my first ExpressionEngine project for a training centre’s extranet, where they will tailor content to a specfic company and just wanted to get some Feedback to see if I’m building it the right way, and if anyone else would build it differently.

    The requirements:
    Site can only be accessed via a login which admin will provide.

    There will be one admin person creating all the content, no community interaction yet (but there may be some commenting put in later).

    Each client will be given their own URL: e.g.

    http://www.myextranet.com/google for google customers
    http://www.myextranet.com/yahoo for yahoo customers

    Once logged in:
    Home Page:
    - Will display personalisation welcome message with users name
    - Will display supplied content relating to details about the innovation centre
    - Will display links to other site pages to include
    - Agenda with company specific session details.
    - Attendees
    - Menu for lunch break
    - Documents, area where admin will put pdfs/word docs etc
    - Contact/Support page
    - Training Centre Information

    Front end delegate login
    - Simple front end login, tailored to the client
      e.g. google would have google’s logo, yahoo would have yahoo’s logo.
     
    Backend admin
    - Admin login
    - Manage clients and users
    - Scheduling seesions for the agenda
    - Personalised content per client
    - Add, amend and update text content of site
    - Upload and manage files

    I’ve started by creating TemplateGroups (named google, yahoo etc)
    Then have templates for each of the pages e.g. (index, agenda, menu, documents etc)
    I have setup Channels for each of those pages e.g. Agenda, Menu, Clients etc)
    I then have entries in those channels categorised using the clientname as the category.

    It is working in a fashion, but it is starting to get very messy in the backend for the admin person to manage i.e. when they Add a new client, they have to add a new templategroup based on a default group, add a membergroup, add a category etc…

    As this is my first ExpressionEngine project, thought I’d get as much help as possible!
    Would you have built it this way?
    Or is there a better way to build it?

    Any help much appeciated,

    UKFreelancer

  • #2 / Mar 08, 2012 6:30pm

    John St-Amand

    865 posts

    Why not just have the company (google, yahoo, etc.) be entries?  I might also suggest making members entries using an add-on like Zoo Visitor or Safecracker Registration.  Then you would have considerable options available to you for the display of content because it would all be in that familiar entries tag way of doing things.

    You’re right, having to create new groups, etc. will become cumbersome over time.  You shouldn’t need to do that, necessarily.  You can have the logged in user’s profile determine what they see even without a client-specific segment in the URL - you could still have their name in the URL if you wish, and just use an add-on like Freebie to designate a segment to ignore - making it cosmetic only - to make it appear they have a client specific URL without it actually playing any real role in EE’s parsing.

    Based on how you’ve described it, that’s likely how i would handle it so that it can be scaled up purely with entries and no need to touch the templates.  Vague though that may be, I hope you find it helpful.

  • #3 / Mar 08, 2012 6:33pm

    John St-Amand

    865 posts

    The only element I notice in your post that you might need the client-specific segment to actively play a role in is the customized login.  But that could again come from a login/client-name and just match client-name to a “client” entry in the clients channel I suggested - you’d just grab the entry and therefore the client name, logo and any other custom fields on the basis of the last segment being the url title for that client entry.

  • #4 / Mar 12, 2012 12:04pm

    UKFreelancer

    49 posts

    Many thanks for your ideas!

    Typical client has just added new functionality now :-(
    Each user attending will have the ability to select their lunch menu (i.e what they will be eating)
    I’ve catered for this (no pun intended) temporarily by having the menu choice as an optional Member Field, but this causes an issue if the user wants two side orders or two drinks etc….

    Does anyone else have expierence of building intranets with specific content for each Member Group that could steer me in the right direction?

    Cheers,

    UKFreelancer

.(JavaScript must be enabled to view this email address)

ExpressionEngine News!

#eecms, #events, #releases