SoC topic improvements

From GeeklogWiki
Revision as of 07:26, 9 March 2012 by Dirk (talk | contribs) (changed to "possible mentor")

Jump to: navigation, search
(Return to the main idea page for the Google Summer of Code)

Introduction

When Geeklog 1.9.0 is released Topics will be able to have child Topics and, Blocks and Articles can be assigned to one or more Topics. With these new features of Geeklog, this makes a number of the ideas in the Google Summer of Code 2010 Category Plugin project not relevant. This new Topic Improvements project takes into account some of the projects from the Category Plugin and adds in a few new ideas.

Objective

The feature list for the Topic Improvements can be broken down into several parts:

New Plugin API

  • Add new plugin API to integrate extra fields from one or more plugins into edit forms. This should allow for displaying, validation and saving the information. Some functionality will also be required to tell the plugin what plugins it should not integrate into
  • Add new plugin API to integrate extra fields from one or more plugins into submission forms
  • Add this functionality to the admin editors and submission forms of Articles, Category plugin, Static Pages plugin, Polls plugin, Links Plugin and Calendar plugin
  • Allowing plugins to display items amongst the articles when a topic is displayed


Topic Editor

Menu Editor:

  • Based on Topics (Admin may hide topics from being viewed in the menu)
  • Replaces/Adds to Topics Block and Top Menu
  • Ability to add menu items to other Geeklog objects and webpages
  • Interface for changing the style of the menus
  • Minimum support for CSS 2 styling

Tags:

  • A Topic can be defined as a tag
  • Tag Cloud block
  • Page with Tag Cloud which lists items from selected tag as well as other tags the items belong too.

What's Related Block:

  • Based on Topic relationships (Any other related info???)
  • Block should be able to display by using an autotag
  • Allow plugins to use the block

Level of Difficulty

medium

This project will require someone to spend time understanding how Geeklog Topics and the core plugin API works. You will also need to install a number of the more popular plugins that offer similar features to see how they work. As of version 1.8.0, Geeklog includes jQuery. jQuery could be used with this project for the menu system and/or the Topic Admin editor tree.

Possible mentor: Tom Homer


Further Reading