Documente Academic
Documente Profesional
Documente Cultură
Architect: Antonio Estevez Delivery Manager: Frank Cefalu Version: 1.0 Date: 9/1/2011
echnical Specification for Kaltura Resources Feature: Kaltura Resources (kaltura_res)....................................4 Feature: Kaltura Tag Cloud (kaltura_res_tag_cloud)......................4 Feature: Kaltura Search (kaltura_res_search)..............................4 User Role: Anonymous user........................................................6 User Role: Authenticated user....................................................6 User Role: Admin.......................................................................6 Contributed modules: ...............................................................6 Custom modules: ......................................................................7 Defined in hook_menu: .............................................................8 Defined via configuration (organized by menu): .........................8 Defined via views: ..................................................................10 Defined via hook_perm: ...........................................................11 Content Type: Resource (resource)...........................................12 Content Type: Video resource (video_resource).........................13 Content Type: FAQ (Machine name: faq).....................................13 Content Type: Ticker (Machine name: ticker)..............................14 Content Type: External resources (Machine name: external_resources)..................................................................14 Taxonomy: Category.................................................................15 Taxonomy: Tags........................................................................15 Taxonomy: Audience / Tech expertise.........................................15 Taxonomy: Video Type..............................................................15 Taxonomy: FAQ Type.................................................................15 View Name: kr_latest_webinar...................................................16 View Name: kr_latest_training_video..........................................16 View Name: kr_latest_resources................................................16 View Name: kr_ticker_admin......................................................17 View Name: ticker....................................................................17 View Name: kr_related_videos_webinars....................................17 View Name: kr_related_guides...................................................18 View Name: kr_common_questions............................................18 View Name: kr_related_content.................................................18 Block Name: kr_faq_type...........................................................20 Block Name: kr_related_vidoes..................................................21 Block Name: kr_common_questions...........................................21 Block Name: kr_getting_started.................................................21 Block Name: kr_integration_help...............................................21 Block Name: kr_getting_started.................................................22 Block Name: kr_video_thumbs...................................................22 Block Name: kr_stay_updated....................................................22 Block Name: kr_subscribe_newsletter........................................23 Block Name: kr_node_category..................................................23 Block Name: kr_node_expertise.................................................23
echnical Specification for Kaltura Resources Block Name: kr_node_tags.........................................................24 Block Name: kr_node_questions_answered.................................24 Block Name: kr_node_related....................................................24 Block Name: Show Results From................................................24 Block Name: kr_related_vidoes_video_node................................25 Webform Name: Couldnt find what youre looking or?...............26 Contributed modules: .............................................................27 Custom modules: ....................................................................27 Block Name: Tags in Tags..........................................................27 Contributed modules: .............................................................28 Custom modules: ....................................................................28 View Name: kr_main.................................................................28 Block Name: kr_sort_by.............................................................30
Block Name: kr_footer_search............................................31 Functionality.......................................................................31 Block Name: kr_sort_by......................................................31 Functionality.......................................................................32
Module Name: Kaltura Resources(kaltura_res)...........................33 Functionality............................................................................33 Block Name: kr_faq_type...........................................................33 Block Name: kr_common_questions...........................................33 Block Name: kr_getting_started.................................................33 Block Name: kr_integration_help...............................................33 Block Name: kr_developers.......................................................33 Block Name: kr_stay_updated....................................................33 Block Name: kr_node_category..................................................33 Block Name: kr_node_expertise.................................................33 Name: kr_node_tags.................................................................33 Block Name: kr_node_questions_answered.................................33 Block Name: kr_node_related....................................................33 Block Name: kr_subscribe_newsletter........................................33 Module Name: Menu Click Counter(menu_counter).....................34 Functionality:...........................................................................34 Note: Items highlighted in grey are to be held off until the end of the development phase. It will be determined later if videos will be in this phase or not.
Features
Notes: All the functionality for the phase 1 of the phase Kaltura will be split into features that make sense, to make future functionality changes and production pushes easier.
echnical Specification for Kaltura Resources The basic implementation of search will be to use Search API combined with its views integration module. Most, if not all, of the listing pages will use the same page, using facet filtering to constrain the results and a relevancy rating as needed. Navigation will be accomplished by leveraging the facet filtering functionality and the menu system.
Contributed modules:
1. Hidden_captcha 2. views 3. path 4. image 5. block 6. ctools 7. kaltura 8. search (using drupal core search) 9. service_links (sharebar) 10. taxonomy 11. wysiwyg 12. views_jqfx (for the ticker) 13. FAQ (for Q & A) 14. Webform 15. views_bulk_operations 16. entity 17. statistics 18. references 19. google_analytics
Custom modules:
1. Kaltura Resources (machine name: kaltura_res) 2. Kaltura Resources Footer (machine name: kaltura_res_footer) a. Administration and display of footer content b. Leverages menu system hierarchy to create columns of static pages all
defined via configuration
3. Kaltura Resources Ticker (machine name: kaltura_res_ticker) a. Administration and display of Ticker b. Uses a simple content type that has either an node-reference or link c. Leverages views_jqfx for the display 4. Kaltura Resources Navigation (machine name: kaltura_navigation a. Overrides drupal core search to allow search terms preceded with
category:[category-name] to redirect to the taxonomy listing page
b. Uses pre-process functions to make taxonomy pages and searchresults pages use the same TPLs
5. Menu Click Counter (menu_counter) a. Simple modules that stores each click of a menu link b. Not specific to Kaltura Resources, so it should be designed to stand
alone
d. Module uninstall file should remove the table 6. Kaltura Resources Marketo (kaltura_res_marketo) a. Leverage the code and libraries found in the client supplied, Drupal 6
Module, kaltura_extra, into a new Drupal 7 module
d.
Kaltura admin/kaltur Resources a-resources Administrat ion Kaltura Footer Administrat ion Kaltura Q&A Administrat ion admin/kaltur aresources/fo oter admin/kaltur aresources/QA
drupal_get_form(custom_form)
drupal_get_form(faq_order_settin gs_form)
Menu Title Download & Install Kaltura CE Start Free Trial Contact Sales
Menu Footertop Footertop Footertop Menu Show Results From Show Results From Show Results From Show Results From Show Results
Path kr-main
Videos
Getting Started
Page Title Result s Count Result s Count Result s Count Result s Count Result s
echnical Specification for Kaltura Resources From Questions & Answers Kaltura.org Results Kaltura.com Results kr-main?filter[field_category] [0]=[category-tid] TBD Show Results From Show Results From Show Results From Show Results From Count Result s Count Result s Count Result s Count Result s Count
TBD
Body
Text Area with summary override Auto-complete, unlimited values, FAQ and Resource content types
Node reference
Taxonomy Taxonomy
Please upload any files that should be available for a viewer of this content to download, such as a PDF of the content.
Single value Free tagging Allowed file extensions: pdf, gif, png, jpeg Unlimited values File directory: resource_files
File
File
url
field_url
Text Field
Taxonomy Vocabularies
Taxonomy: Category
Notes: Single value, applies to any node, ALL FAQ content needs the a category of Questions and Answers Wireframe Reference: Just about every page
Taxonomy: Tags
Notes: Free tagging (tied to the assign kaltura resource tag permission), applies to any node, tied to the kaltura_tag_cloud feaure Wireframe Reference: In the Tag Cloud
Purpose/Use: Allows administrators to assign relevant tags to content accessible by the kr_tag_cloud block (TODO: add link to this block here)
Purpose/Use: Allows Videos to be filtered when browsing the Video Library Page
DELAYED, MAY NOT BE IN SCOPE FOR THIS PHASE OF DEVELOPMENT
Purpose/Use: Allows Videos to be filtered when browsing the Video Library Page
echnical Specification for Kaltura Resources Fields to Include: title, title (for non-registerable nodes), date (if the node had one), custom link (to node, unless the node is enabled for registration in which case the link goes to the registration page) Fields to Include: title, body, php field(choose links) View Notes: Will be placed on the frontpage Arguments: none Sort by: publishing date, descending Tag: kaltura_res
echnical Specification for Kaltura Resources View Types: default(3 results), block_1 (no overrides of default), block_2 (with 5 results override and different default argument for pulling the term(s) to base the related links on; terms are pulled from the term related to the listing as opposed to the nodes terms if the block is on a listing page as opposed to a node-page) Wireframe Reference: p1 Fields to Include: title with link to node-page View Notes: Arguments: see notes on Related Content from the start of this document but the logic will change based on if the landing page is a listing page or a node-page (see block visibility functions) Sort by: publishing date, descending Tag: kaltura_res
DELAYED, MAY NOT BE IN SCOPE FOR THIS PHASE OF DEVELOPMENT
echnical Specification for Kaltura Resources View Goal: Content related to the node (or listing page) this block appears on View Types: default(10 results), block_1 (no overrides of default) Wireframe Reference: p1 Fields to Include: title with link to node-page View Notes: Arguments: see notes on Related Content from the start of this document but the logic will change based on if the landing page is a listing page or a node-page (see block visibility functions) Sort by: publishing date, descending
_kaltura_resource_is_search_result_page()
Logic: return TRUE if user in on faq type.
_kaltura_resource_is_search_page()
Logic: Any listing page (basically any page thats not the frontpage, taxonomy,node-page, or admin page )
_kaltura_resource_is_search_faq_page()
Logic: Block displayed when searching to introduce not only category.
_kaltura_resource_is_main_listing_page()
Logic: Any listing page that has a link to it from the main nav
_kaltura_resource_is_faq_page()
Logic: returns TRUE if the user is on an FAQ page
_kaltura_resource_is_node_page()
Logic: returns TRUE if the user is on a node page (e.g. node/nid)
_kaltura_resource_is_webform()
Logic: returns TRUE if the user is on a webform
_kaltura_resource_is_video_node()
Logic: returns TRUE if the user is on a video_resource node
echnical Specification for Kaltura Resources Visibilty: _kaltura_resource_is_faq_page() Defined by: hook_menu in kaltura_resource.module
echnical Specification for Kaltura Resources Content: Full HTML configurable bodies, with default markup defined in kaltura_resource.module (taken from comps) Wireframe Reference: p2 Visibilty: <front> Defined by: hook_menu in kaltura_resource.module
echnical Specification for Kaltura Resources Wireframe Reference: p2 Visibilty: <front> Defined by: hook_menu in kaltura_resource.module
echnical Specification for Kaltura Resources Block Purpose: displays menu items from the Show Results From menu Content: generated automatically by Drupals menu system, Wireframe Reference: p6 Visibilty: _kaltura_resource_is_search_result_page() Defined by: Drupal OOB menu system
Custom modules:
1. Kaltura Resources Tag Cloud (machine name: Kaltura_res_tag_cloud)
Custom modules:
1. Kaltura Resources Search (machine name: Kaltura_res_search)
echnical Specification for Kaltura Resources default(page_1): kr-search-by-publishing-data page_2: kr-search-by-last-modified page_3: kr-search-by-title, page_4: kr-search-by-type.
Functionality
Function kaltura_navigation_footersearch_form generated this form. Function kaltura_navigation_search takes search text and recognize normal search and search for category. At the views not consist sort for title and category name, so its implemented two functions kaltura_navigation_sort_criteria_title and kaltura_navigation_sort_criteria_type.
Functionality
Create helper functions:
_kaltura_resource_is_listing_page(), _kaltura_resource_is_search_result_page(), _kaltura_resource_is_search_page(), _kaltura_resource_is_search_faq_page(), _kaltura_resource_is_main_listing_page(), _kaltura_resource_is_faq_page(), _kaltura_resource_is_node_page(), _kaltura_resource_is_webform(), _kaltura_resource_is_video_node().
Create blocks:
Block Name: kr_faq_type Block Name: kr_common_questions Block Name: kr_getting_started Block Name: kr_integration_help Block Name: kr_developers Block Name: kr_stay_updated Block Name: kr_node_category Block Name: kr_node_expertise Name: kr_node_tags Block Name: kr_node_questions_answered Block Name: kr_node_related Block Name: kr_subscribe_newsletter
Functionality:
Function menu_counter_menu() create menu link. Function menu_counter_insert() enters data into a table. Function menu_counter_page() displays a table with data. Function menu_counter_schema() create table in database.
1. 2. well. 3. 4. 5.
Create view (block) Add fields (title, a small image, date, whatever you like). Or teasers, what works as "Arguments" is from now on called "Contextual filters", so go there. Add the filter: "Content: Has taxonomy term ID" Configuration on this filter: -> When the filter value is NOT in the URL: -> Provide
default value -> Type: Taxonomy Term ID from URL -> under that, check the box "Load default filter from node page, that's good for related taxonomy blocks." -> now check the boxes of the taxonomies you want involved here 6. 7. 8. 9. Now you need to add the second filter in order to exclude the current node from the Select Content: Nid Set the 'when argument is not present' to 'Provide default argument' Set the 'Default argument type' to 'Content ID from URL' list. Click [+] button of the contextual filters section.
10. Go to "MORE" , and check the "Exclude" box. 11. Add a block to your view and embed the block on your node pages 12. Save your view