Index: project.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/project/project.inc,v
retrieving revision 1.75.2.8
diff -u -F^f -r1.75.2.8 project.inc
--- project.inc 8 Jun 2006 06:37:36 -0000 1.75.2.8
+++ project.inc 16 Jun 2006 07:00:29 -0000
@@ -152,6 +152,15 @@ function project_project_form(&$node) {
'#maxlength' => 255,
'#description' => t('Link to project screenshots.'),
);
+ $form['project']['project_image'] = array(
+ '#type' => 'textfield',
+ '#title' => t('Project Image'),
+ '#default_value' => $node->project_image,
+ '#size' => 40,
+ '#maxlength' => 255,
+ '#description' => t('URL of a screenshot or other image for this project. Note: the value you enter here will be automatically wrapped in an IMG tag, so it should either be a full URL to an external image, or a relative path to a file that you have uploaded onto the site.'),
+ );
+
$form['project']['changelog'] = array(
'#type' => 'textfield',
'#title' => t('Changelog'),
@@ -428,6 +437,10 @@ function project_project_view(&$node, $t
$breadcrumb = project_project_set_location($node, $breadcrumb);
menu_set_location($breadcrumb);
+ if ($node->project_image) {
+ $output .= '
 . ')
';
+ }
+
if ($releases = project_release_load($node)) {
// Determine most suitable release
$overview = variable_get('project_release_overview', -1);
@@ -573,7 +586,7 @@ function project_project_insert($node) {
$node->mail_copy_filter = serialize($node->mail_copy_filter);
$node->mail_copy_filter_state = serialize($node->mail_copy_filter_state);
- db_query("INSERT INTO {project_projects} (nid, uri, homepage, changelog, cvs, demo, release_directory, issues, components, mail, mail_digest, mail_reminder, mail_copy, mail_copy_filter, mail_copy_filter_state, version, help, screenshots, documentation, license) VALUES (%d, '%s', '%s', '%s', '%s', '%s', '%s', %d, '%s', '%s', '%s', %d, '%s', '%s', '%s', %d, '%s', '%s', '%s', '%s')", $node->nid, $node->uri, $node->homepage, $node->changelog, $node->cvs, $node->demo, $node->release_directory, $node->issues, $node->components, $node->mail, $node->mail_digest, $node->reminder, $node->mail_copy, $node->mail_copy_filter, $node->mail_copy_filter_state, $node->version, $node->help, $node->screenshots, $node->documentation, $node->license);
+ db_query("INSERT INTO {project_projects} (nid, uri, homepage, changelog, cvs, demo, release_directory, issues, components, mail, mail_digest, mail_reminder, mail_copy, mail_copy_filter, mail_copy_filter_state, version, help, screenshots, project_image, documentation, license) VALUES (%d, '%s', '%s', '%s', '%s', '%s', '%s', %d, '%s', '%s', '%s', %d, '%s', '%s', '%s', %d, '%s', '%s', '%s', '%s', '%s')", $node->nid, $node->uri, $node->homepage, $node->changelog, $node->cvs, $node->demo, $node->release_directory, $node->issues, $node->components, $node->mail, $node->mail_digest, $node->reminder, $node->mail_copy, $node->mail_copy_filter, $node->mail_copy_filter_state, $node->version, $node->help, $node->screenshots, $node->project_image, $node->documentation, $node->license);
project_release_scan_directory($node->uri);
}
@@ -583,7 +596,7 @@ function project_project_update($node) {
$node->mail_copy_filter = serialize($node->mail_copy_filter);
$node->mail_copy_filter_state = serialize($node->mail_copy_filter_state);
- db_query("UPDATE {project_projects} SET uri = '%s', homepage = '%s', changelog = '%s', cvs = '%s', demo = '%s', release_directory = '%s', issues = %d, components = '%s', mail = '%s', mail_digest = '%s', mail_reminder = %d, mail_copy = '%s', mail_copy_filter = '%s', mail_copy_filter_state = '%s', version = %d, help = '%s', screenshots = '%s', documentation = '%s', license = '%s' WHERE nid = %d", $node->uri, $node->homepage, $node->changelog, $node->cvs, $node->demo, $node->release_directory, $node->issues, $node->components, $node->mail, $node->mail_digest, $node->mail_reminder, $node->mail_copy, $node->mail_copy_filter, $node->mail_copy_filter_state, $node->version, $node->help, $node->screenshots, $node->documentation, $node->license, $node->nid);
+ db_query("UPDATE {project_projects} SET uri = '%s', homepage = '%s', changelog = '%s', cvs = '%s', demo = '%s', release_directory = '%s', issues = %d, components = '%s', mail = '%s', mail_digest = '%s', mail_reminder = %d, mail_copy = '%s', mail_copy_filter = '%s', mail_copy_filter_state = '%s', version = %d, help = '%s', screenshots = '%s', project_image = '%s', documentation = '%s', license = '%s' WHERE nid = %d", $node->uri, $node->homepage, $node->changelog, $node->cvs, $node->demo, $node->release_directory, $node->issues, $node->components, $node->mail, $node->mail_digest, $node->mail_reminder, $node->mail_copy, $node->mail_copy_filter, $node->mail_copy_filter_state, $node->version, $node->help, $node->screenshots, $node->project_image, $node->documentation, $node->license, $node->nid);
project_release_scan_directory($node->uri);
}
Index: project.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/project/project.install,v
retrieving revision 1.2.2.3
diff -u -F^f -r1.2.2.3 project.install
--- project.install 8 Jun 2006 09:05:55 -0000 1.2.2.3
+++ project.install 16 Jun 2006 07:00:29 -0000
@@ -24,6 +24,7 @@ function project_install() {
help text,
documentation varchar(255) not null default '',
screenshots varchar(255) not null default '',
+ project_image varchar(255) not null default '',
license varchar(255) not null default '',
PRIMARY KEY (`nid`),
KEY project_projects_uri (uri(8))
@@ -114,6 +115,7 @@ function project_install() {
mail_reminder smallint NOT NULL default '0',
help text,
screenshots varchar(255) default '' not null,
+ project_image varchar(255) default '' not null,
mail_copy_filter_state varchar(255) default '' not null,
documentation varchar(255) default '' not null,
license varchar(255) default '' not null,
@@ -199,3 +201,17 @@ function project_update_2() {
$ret[] = update_sql("UPDATE {system} SET weight = 2 WHERE name = 'project'");
return $ret;
}
+
+function project_update_3() {
+ $ret = array();
+ switch ($GLOBALS['db_type']) {
+ case 'mysql':
+ case 'mysqli':
+ $ret[] = update_sql("ALTER TABLE {project_projects} ADD COLUMN project_image varchar(255) not null default ''");
+ break;
+ case 'pgsql':
+ db_add_column($ret, 'project_projects', 'project_image', 'varchar(255)', array('not null' => TRUE, 'default' => "''"));
+ break;
+ }
+ return $ret;
+}
Index: project.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/project/project.module,v
retrieving revision 1.239.2.6
diff -u -F^f -r1.239.2.6 project.module
--- project.module 15 Jun 2006 22:13:26 -0000 1.239.2.6
+++ project.module 16 Jun 2006 07:00:30 -0000
@@ -588,7 +588,9 @@ function project_page_overview($termname
'n.title',
'nr.teaser',
'nr.format',
- 'p.issues'
+ 'p.issues',
+ 'p.screenshots',
+ 'p.project_image'
)
),
'from' => array(
@@ -703,7 +705,7 @@ function project_page_overview($termname
}
// If taxonomy is not enabled, fetch all projects
else {
- $result = db_query(db_rewrite_sql("SELECT n.nid, n.title, nr.teaser, nr.format, p.issues FROM {node} n INNER JOIN {node_revisions} nr ON n.vid = nr.vid INNER JOIN {project_projects} p ON n.nid = p.nid WHERE n.status = 1 ORDER BY n.title ASC"));
+ $result = db_query(db_rewrite_sql("SELECT n.nid, n.title, nr.teaser, nr.format, p.issues, p.screenshots, p.project_image FROM {node} n INNER JOIN {node_revisions} nr ON n.vid = nr.vid INNER JOIN {project_projects} p ON n.nid = p.nid WHERE n.status = 1 ORDER BY n.title ASC"));
}
$class = 'even';
while ($project = db_fetch_object($result)) {
@@ -1033,6 +1035,12 @@ function theme_project_summary($project)
if ($project->changed) {
$output .= '' . t('Last changed: %interval ago', array('%interval' => format_interval(time() - $project->changed, 2))) . '
';
}
+ if ($project->project_image) {
+ $output .= '';
+ }
+ if ($project->screenshots) {
+ $output .= l('more images', $project->screenshots);
+ }
$output .= $project->body;
$output .= theme('links', $project->links);
if ($project->terms) {