Hi. On this page we are keeping track of the state of the filmforge installation profile. We began in July 2007 by using TaTien's install_profile_api module. As of August 28th the install profile works! Please try using this profile and help us fix the bugs! Note that you will need to install some additional non drupal software to make it all work (ffmpeg and flowplayer). More info here: FilmForge/Installation. Thanks - schock

Please note that Anarcat attached this version to the page (instead of copy-pasting) for technical reason (whitespace) so if you want to do modifications, add an extra file, don't replace his, thanks.

   1 <?php
   2 /**
   3  * @file
   4  * Filmforge installation profile.
   5  *
   6  * This code was generated by the profile wizard and then heavily
   7  * hand-edited to add views, panels, blocks and menus
   8  *
   9  * @date 25-6-2007
  10  *
  11  * @todo there's still a few functions to implement (see the functions
  12  * at the end), and a README would be nice. look for other @todo in
  13  * this file for more information
  14  * 
  15  */
  16 
  17 /*
  18  * You must include the crud.inc file in your profile.  The file is
  19  * part of the install_profile_api module.
  20  *
  21  * @todo fix this path...?
  22  */
  23 include_once('crud.inc');
  24 
  25 /**
  26 * The modules that are enabled when this profile is installed.
  27 *
  28 * @return
  29 *  An array of modules to be enabled.
  30 */
  31 function filmforge_profile_modules() {
  32   
  33   return array(
  34 
  35     /* CCK */
  36     'content', 'date', 'fieldgroup', 'nodereference', 'number', 'optionwidgets', 'text', 'userreference', 'votingapi_field', 
  37 
  38     /* Core - optional */
  39     'aggregator', 'color', 'comment', 'contact', 'help', 'locale', 'menu', 'path', 'profile', 'search', 'taxonomy', 'throttle', 'upload', 
  40 
  41     /* Core - required */
  42     'block', 'filter', 'node', 'system', 'user', 'watchdog', 
  43 
  44     /* Image */
  45     'image', 'image_attach', 
  46 
  47     /* Licenses */
  48     'creativecommons_lite', 
  49 
  50     /* Multilanguage - i18n */
  51     'i18n', 'i18nblocks', 'i18nmenu', 'i18nprofile', 'i18ntaxonomy', 'i18nviews', 'translation', 
  52 
  53     /* Multilanguage - i18n - experimental */
  54     'i18ncontent', 'i18nstrings', 'i18nsync', 'ttext', 
  55 
  56     /* Other */
  57     'autolocale', 'date_api', 'diff', 'panels', 'pathauto', 'pearwiki_filter', 'recent_changes', 'wikitools', 
  58 
  59     /* Taxonomy */
  60     'tagadelic', 
  61 
  62     /* Video */
  63     'video', 'video_customfields', 'video_ffmpeg_helper', 'video_image', 'video_multidownload', 'video_optmetadata', 'video_params', 'video_upload', 
  64 
  65     /* Views */
  66     'nodecloud', 'views', 'views_bonus', 'views_rss', 'views_theme_wizard', 'views_ui', 
  67 
  68     /* Voting */
  69     'fivestar', 'votingapi', 
  70   
  71   );
  72   
  73 }  
  74   
  75 /**
  76 * Implementation of hook_profile_details().
  77 *
  78 * This contains an array of profile details for display from the main selection screen.
  79 */
  80 function filmforge_profile_details() {
  81   return array(
  82     'name' => st('Filmforge install profile'),
  83     'description' => st('This install profile installs a video-based community website.')
  84   );
  85 }
  86     
  87   
  88 /**
  89 * Implementation of hook_profile_final().
  90 *
  91 * FilmForge platform installation.
  92 */
  93 function filmforge_profile_final() {
  94 
  95   /* Build content types */
  96     $types = array (
  97   'image' => 
  98   array (
  99     'name' => 'Image',
 100     'module' => 'image',
 101     'description' => st('An image (with thumbnail). This is ideal for publishing photographs or screenshots.'),
 102     'type' => 'image',
 103     'has_title' => true,
 104     'title_label' => 'Title',
 105     'has_body' => true,
 106     'body_label' => 'Body',
 107     'custom' => false,
 108     'modified' => false,
 109     'locked' => true,
 110     'orig_type' => 'image',
 111     'is_new' => true,
 112   ),
 113   'page' => 
 114   array (
 115     'type' => 'page',
 116     'name' => 'Page',
 117     'module' => 'node',
 118     'description' => st('If you want to add a static page, like a contact page or an about page, use a page.'),
 119     'help' => '',
 120     'has_title' => '1',
 121     'title_label' => 'Title',
 122     'has_body' => '1',
 123     'body_label' => 'Body',
 124     'min_word_count' => '0',
 125     'custom' => '1',
 126     'modified' => '1',
 127     'locked' => '0',
 128     'orig_type' => 'page',
 129     'is_new' => true,
 130   ),
 131   'story' => 
 132   array (
 133     'type' => 'story',
 134     'name' => 'Story',
 135     'module' => 'node',
 136     'description' => st('Stories are articles in their simplest form: they have a title, a teaser and a body, but can be extended by other modules. The teaser is part of the body too. Stories may be used as a personal blog or for news articles.'),
 137     'help' => '',
 138     'has_title' => '1',
 139     'title_label' => 'Title',
 140     'has_body' => '1',
 141     'body_label' => 'Body',
 142     'min_word_count' => '0',
 143     'custom' => '1',
 144     'modified' => '1',
 145     'locked' => '0',
 146     'orig_type' => 'story',
 147     'is_new' => true,
 148   ),
 149   'video' => 
 150   array (
 151     'name' => 'Video',
 152     'module' => 'video',
 153     'description' => st('Allow a variety of video formats to be posted as nodes in your site'),
 154     'type' => 'video',
 155     'has_title' => true,
 156     'title_label' => 'Title',
 157     'has_body' => true,
 158     'body_label' => 'Body',
 159     'custom' => false,
 160     'modified' => false,
 161     'locked' => true,
 162     'orig_type' => 'video',
 163     'is_new' => true,
 164   ),
 165 );
 166   
 167   foreach ($types as $content_type) {
 168     install_add_content_type($content_type);
 169   }
 170 
 171   /* Path alias */
 172   path_set_alias('node/add/video', 'publish');
 173 
 174   /* Variables */
 175   
 176   variable_set('creativecommons_lite_video', 1);
 177   variable_set('file_downloads', '1');
 178   variable_set('filter_default_format', '1');
 179 //   variable_set('filter_html_1', 1);
 180   variable_set('fivestar_position_teaser_video', 'hidden');
 181   variable_set('fivestar_position_video', 'below');
 182   variable_set('fivestar_stars_video', '5');
 183   variable_set('fivestar_style_video', 'default');
 184   variable_set('fivestar_unvote_video', 1);
 185   variable_set('fivestar_video', 1);
 186   variable_set('i18n_browser', '1');
 187   variable_set('i18n_languages', array (
 188   'site_default' => 'en',
 189   'name' => 
 190   array (
 191     'fr' => 'French',
 192     'ko' => 'Korean',
 193     'en' => 'English',
 194   ),
 195   'rtl' => 
 196   array (
 197     'en' => 0,
 198     'fr' => 0,
 199     'ko' => 0,
 200   ),
 201   'native' => 
 202   array (
 203     'en' => 'English',
 204     'fr' => 'Français',
 205     'ko' => '한글',
 206   ),
 207   'enabled' => 
 208   array (
 209     'en' => 'en',
 210     'fr' => 'fr',
 211     'ko' => 'ko',
 212   ),
 213 ));
 214   variable_set('i18n_node_page', '1');
 215   variable_set('i18n_node_story', '1');
 216   variable_set('i18n_node_video', '0');
 217   variable_set('i18n_selection_mode', 'simple');
 218   variable_set('i18n_translation_links', '0');
 219   variable_set('i18n_translation_node_links', '1');
 220   variable_set('i18n_translation_workflow', '1');
 221   variable_set('i18n_variables', array (
 222   0 => 'site_name',
 223   1 => 'site_slogan',
 224   2 => 'site_mission',
 225   3 => 'site_footer',
 226   4 => 'anonymous',
 227   5 => 'blog_help',
 228   6 => 'story_help',
 229   7 => 'user_registration_help',
 230   8 => 'user_mail_welcome_subject',
 231   9 => 'user_mail_welcome_body',
 232   10 => 'user_mail_approval_subject',
 233   11 => 'user_mail_approval_body',
 234   12 => 'user_mail_pass_subject',
 235   13 => 'user_mail_pass_body',
 236   14 => 'menu_primary_menu',
 237   15 => 'menu_secondary_menu',
 238 ));
 239   variable_set('i18ntaxonomy_vocabularies', array (
 240   2 => 0,
 241   1 => 0,
 242 ));
 243   variable_set('image_attach_page', '1');
 244   variable_set('image_attach_size_body_video', 'thumbnail');
 245   variable_set('image_attach_size_teaser_video', 'thumbnail');
 246   variable_set('image_attach_story', '1');
 247   variable_set('image_attach_video', '0');
 248   variable_set('image_attach_weight_body_page', '0');
 249   variable_set('image_attach_weight_body_video', '0');
 250   variable_set('image_attach_weight_teaser_page', '0');
 251   variable_set('image_attach_weight_teaser_video', '0');
 252   variable_set('image_gallery_nav_vocabulary', 1);
 253   variable_set('image_max_upload_size', '800');
 254   variable_set('image_sizes', array (
 255   0 => 
 256   array (
 257     'label' => 'thumbnail',
 258     'width' => '200',
 259     'height' => '200',
 260   ),
 261   1 => 
 262   array (
 263     'label' => 'preview',
 264     'width' => '640',
 265     'height' => '640',
 266   ),
 267   2 => 
 268   array (
 269     'label' => 'sidebar',
 270     'width' => '150',
 271     'height' => '150',
 272   ),
 273   3 => 
 274   array (
 275     'label' => 'videoplayer',
 276     'width' => '400',
 277     'height' => '300',
 278   ),
 279   4 => 
 280   array (
 281     'label' => '',
 282     'width' => '',
 283     'height' => '',
 284   ),
 285 ));
 286   variable_set('menu_primary_menu', 2);
 287   variable_set('menu_secondary_menu', 2);
 288 //   variable_set('menu_trim_menu_1', '1');
 289 //   variable_set('menu_trim_menu_2', '0');
 290   variable_set('node_options_forum', array (
 291   0 => 'status',
 292 ));
 293   variable_set('node_options_page', array (
 294   0 => 'status',
 295   1 => 'revision',
 296 ));
 297   variable_set('node_options_story', array (
 298   0 => 'status',
 299   1 => 'promote',
 300 ));
 301   variable_set('node_options_video', array (
 302   0 => 'status',
 303 ));
 304   variable_set('pearwiki_filter_ignore_regexp_4', '');
 305   variable_set('pearwiki_filter_ignore_tags_4', '');
 306   variable_set('pearwiki_filter_image_base_4', 'files/');
 307   variable_set('pearwiki_filter_interwiki_mapping_4', 'Local drupal path | path | <path>
 308 groups.drupal.org | gdo | http://groups.drupal.org/freelinking/%s
 309 Wikipedia | wp | http://en.wikipedia.org/wiki/%s
 310 ');
 311   variable_set('pearwiki_filter_pear_path_4', '/var/alternc/html/f/filmforge/www/drupal-5.1/sites/all/modules/pearwiki_filter/');
 312   variable_set('pearwiki_filter_space_replacement_4', '');
 313   variable_set('pearwiki_filter_syntax_4', 'Mediawiki');
 314   variable_set('pearwiki_filter_use_freelinking_4', 0);
 315   variable_set('pearwiki_filter_use_image_4', 1);
 316   variable_set('pearwiki_filter_use_liquid_4', 0);
 317   variable_set('pearwiki_filter_use_wiki_links_4', 1);
 318   variable_set('pearwiki_filter_use_wikitools_4', 0);
 319   variable_set('pearwiki_filter_wikilink_base_4', 'wiki/');
 320   variable_set('site_footer', 'This site was configured using the Filmforge install profile.');
 321   variable_set('site_mission', 'FilmForge is a version of the content management system <a href="http://www.drupal.org">Drupal</a>, tailored to the needs of videomaking communities. FilmForge makes it simple to install and run your own video sharing site.');
 322   variable_set('site_name', 'FilmForge');
 323   variable_set('site_slogan', 'web video for all!');
 324   variable_set('tagadelic_block_tags_2', '12');
 325   variable_set('tagadelic_block_title_2', 'Tag cloud');
 326   variable_set('tagadelic_levels', '6');
 327   variable_set('tagadelic_page_amount', '60');
 328   variable_set('tagadelic_sort_order', 'title,asc');
 329   variable_set('theme_default', 'filmforge');
 330   variable_set('theme_filmforge_settings', array (
 331   'toggle_logo' => 1,
 332   'toggle_name' => 1,
 333   'toggle_slogan' => 1,
 334   'toggle_mission' => 1,
 335   'toggle_node_user_picture' => 0,
 336   'toggle_comment_user_picture' => 0,
 337   'toggle_search' => 0,
 338   'toggle_favicon' => 1,
 339   'default_logo' => 0,
 340   'logo_path' => '',
 341   'logo_upload' => '',
 342   'default_favicon' => 1,
 343   'favicon_path' => '',
 344   'favicon_upload' => '',
 345   'op' => 'Save configuration',
 346   'form_token' => '67b00845f930a0a9867b5f27d3e331f3',
 347 ));
 348   variable_set('theme_settings', array (
 349   'toggle_node_info_page' => false,
 350 ));
 351   variable_set('upload_extensions_default', 'jpg jpeg gif png txt html doc xls pdf ppt pps avi mpeg mpg mov rm flv wmv 3gp mp4 dir dcr');
 352   variable_set('upload_uploadsize_default', 100);
 353   variable_set('upload_usersize_default', 1000);
 354   variable_set('upload_video', '1');
 355   variable_set('video_block_limit_0', '10');
 356   variable_set('video_block_limit_1', '10');
 357   variable_set('video_block_limit_2', '10');
 358   variable_set('video_block_limit_3', '10');
 359   variable_set('video_block_title_0', 'Latest videos');
 360   variable_set('video_block_title_1', 'Top videos');
 361   variable_set('video_block_title_2', 'Most played videos');
 362   variable_set('video_block_title_3', 'Most downloaded');
 363   // @todo needs to be documented in README
 364 //  variable_set('video_cortado', 'http://filmforge.koumbit.net/cortado.jar');
 365   variable_set('video_displaydownloadlink', '1');
 366   variable_set('video_displaydownloadmenutab', '0');
 367   variable_set('video_displayfilesize', '1');
 368   variable_set('video_displayplaylink', '0');
 369   variable_set('video_displayplaymenutab', '0');
 370   variable_set('video_displayplaytime', '1');
 371   variable_set('video_download_ext', 'mov,wmv,rm,flv,avi,divx,mpg,mpeg,mp4,zip');
 372   variable_set('video_downloadcounter', '1');
 373   variable_set('video_ffmpeg_helper_auto_conversion', 1);
 374   variable_set('video_ffmpeg_helper_auto_cvr_audio_bitrate', '64');
 375   variable_set('video_ffmpeg_helper_auto_cvr_busy_video_path', 'busy.flv');
 376   variable_set('video_ffmpeg_helper_auto_cvr_options', '-y -i %videofile -f flv -ar 22050 -ab %audiobitrate -s %size -b %videobitrate %convertfile');
 377   variable_set('video_ffmpeg_helper_auto_cvr_video_bitrate', '200');
 378   variable_set('video_ffmpeg_helper_auto_cvr_width', '400');
 379   variable_set('video_ffmpeg_helper_auto_playtime', 1);
 380   variable_set('video_ffmpeg_helper_auto_resolution', 1);
 381   variable_set('video_ffmpeg_helper_auto_thumbnail', 1);
 382   variable_set('video_ffmpeg_helper_auto_thumbnail_debug', 0);
 383   variable_set('video_ffmpeg_helper_auto_thumbnail_only', 0);
 384   variable_set('video_ffmpeg_helper_auto_thumbnail_seek', '2');
 385   variable_set('video_ffmpeg_helper_ffmpeg_path', '/usr/bin/ffmpeg');
 386   variable_set('video_ffmpeg_helper_thumbnailer_options', '-i %videofile -an -y -f mjpeg -ss %seek -vframes 1 %thumbfile');
 387   variable_set('video_flvplayerloader', 'FlowPlayer.swf');
 388   variable_set('video_flvplayerloader_autoplay', '1');
 389   variable_set('video_flvplayerloader_fullscreen', 'http://filmforge.koumbit.net/fullscreen.js');
 390   variable_set('video_image_promote_thumbnail', 0);
 391   variable_set('video_image_publish_thumbnail', 0);
 392   variable_set('video_multidownload', '1');
 393   variable_set('video_playcounter', '1');
 394   variable_set('video_playinbody', '1');
 395   variable_set('views_defaults', array (
 396   'taxonomy_directory' => 'disabled',
 397 ));
 398   variable_set('wikitools_hijack_freelinking', 1);
 399   variable_set('wikitools_main_page_title', 'Main Page');
 400   variable_set('wikitools_node_types', array (
 401   'image' => 'image',
 402   'test' => 'test',
 403 ));
 404   variable_set('wikitools_options', array (
 405   'node creation' => 'node creation',
 406   'node search' => 'node search',
 407   'auto redirect' => 'auto redirect',
 408   'unique titles' => 'unique titles',
 409   'move protection' => 'move protection',
 410   'delete protection' => 'delete protection',
 411   'underscore as space' => 'underscore as space',
 412 ));
 413   variable_set('wikitools_path', 'wiki');
 414   
 415   /* Permissions */
 416   
 417     install_set_permissions(install_add_role('admin'), array (
 418   0 => 'access news feeds',
 419   1 => 'administer news feeds',
 420   2 => 'administer audio',
 421   3 => 'create audio',
 422   4 => 'download audio',
 423   5 => 'edit own audio',
 424   6 => 'play audio',
 425   7 => 'view download stats',
 426   8 => 'administer blocks',
 427   9 => 'use PHP for block visibility',
 428   10 => 'access comments',
 429   11 => 'administer comments',
 430   12 => 'post comments',
 431   13 => 'post comments without approval',
 432   14 => 'access site-wide contact form',
 433   15 => 'access devel information',
 434   16 => 'execute php code',
 435   17 => 'switch users',
 436   18 => 'administer filters',
 437   19 => 'rate content',
 438   20 => 'use PHP for fivestar target',
 439   21 => 'view ratings',
 440   22 => 'administer all languages',
 441   23 => 'create images',
 442   24 => 'edit images',
 443   25 => 'edit own images',
 444   26 => 'view original images',
 445   27 => 'administer locales',
 446   28 => 'administer menu',
 447   29 => 'access content',
 448   30 => 'administer content types',
 449   31 => 'administer nodes',
 450   32 => 'create page content',
 451   33 => 'create story content',
 452   34 => 'edit own page content',
 453   35 => 'edit own story content',
 454   36 => 'edit page content',
 455   37 => 'edit story content',
 456   38 => 'revert revisions',
 457   39 => 'view revisions',
 458   40 => 'access all panels',
 459   41 => 'create panels',
 460   42 => 'administer url aliases',
 461   43 => 'create url aliases',
 462   44 => 'administer pathauto',
 463   45 => 'access profile wizard',
 464   46 => 'administer search',
 465   47 => 'search content',
 466   48 => 'use advanced search',
 467   49 => 'access administration pages',
 468   50 => 'administer site configuration',
 469   51 => 'select different theme',
 470   52 => 'administer taxonomy',
 471   53 => 'translate nodes',
 472   54 => 'upload files',
 473   55 => 'view uploaded files',
 474   56 => 'access user profiles',
 475   57 => 'administer access control',
 476   58 => 'administer users',
 477   59 => 'change own username',
 478   60 => 'access video',
 479   61 => 'administer video',
 480   62 => 'create video',
 481   63 => 'download video',
 482   64 => 'edit own video',
 483   65 => 'play video',
 484   66 => 'view download counter',
 485   67 => 'view play counter',
 486   68 => 'insert custom fields',
 487   69 => 'create multi-file downloads',
 488   70 => 'insert optional metadata',
 489   71 => 'insert object params',
 490   72 => 'upload video files',
 491   73 => 'access all views',
 492   74 => 'administer views',
 493   75 => 'administer voting api',
 494   76 => 'register vote',
 495 ));
 496   install_set_permissions(1, array (
 497   0 => 'access news feeds',
 498   1 => 'download audio',
 499   2 => 'play audio',
 500   3 => 'view download stats',
 501   4 => 'access site-wide contact form',
 502   5 => 'rate content',
 503   6 => 'view ratings',
 504   7 => 'view original images',
 505   8 => 'access content',
 506   9 => 'search content',
 507   10 => 'access user profiles',
 508   11 => 'access video',
 509   12 => 'download video',
 510   13 => 'play video',
 511   14 => 'view download counter',
 512   15 => 'view play counter',
 513   16 => 'register vote',
 514 ));
 515   install_set_permissions(2, array (
 516   0 => 'access news feeds',
 517   1 => 'download audio',
 518   2 => 'play audio',
 519   3 => 'view download stats',
 520   4 => 'access comments',
 521   5 => 'post comments',