Index: database/database.mssql
===================================================================
RCS file: /cvs/drupal/drupal/database/database.mssql,v
retrieving revision 1.34
diff -u -r1.34 database.mssql
--- database/database.mssql	21 Feb 2004 22:38:00 -0000	1.34
+++ database/database.mssql	4 Mar 2004 02:27:29 -0000
@@ -204,7 +204,7 @@
   [body] [text] NOT NULL ,
   [changed] [int] NOT NULL ,
   [revisions] [text] NULL ,
-  [static] [int] NOT NULL
+  [weight] [smallint] NOT NULL
 ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
 GO
 
@@ -428,7 +428,7 @@
   CONSTRAINT [DF_node_promote] DEFAULT (0) FOR [promote],
   CONSTRAINT [DF_node_moderate] DEFAULT (0) FOR [moderate],
   CONSTRAINT [DF_node_changed] DEFAULT (0) FOR [changed],
-  CONSTRAINT [DF_node_static] DEFAULT (0) FOR [static]
+  CONSTRAINT [DF_node_weight] DEFAULT (0) FOR [weight]
 GO
 
  CREATE  INDEX [IX_role] ON [dbo].[role]([rid]) ON [PRIMARY]
Index: database/database.mysql
===================================================================
RCS file: /cvs/drupal/drupal/database/database.mysql,v
retrieving revision 1.119
diff -u -r1.119 database.mysql
--- database/database.mysql	21 Feb 2004 22:38:00 -0000	1.119
+++ database/database.mysql	4 Mar 2004 02:27:29 -0000
@@ -290,7 +290,7 @@
   body longtext NOT NULL,
   changed int(11) NOT NULL default '0',
   revisions longtext NOT NULL,
-  static int(2) NOT NULL default '0',
+  weight tinyint(1) NOT NULL default '0',
   PRIMARY KEY  (nid),
   KEY node_type (type(4)),
   KEY node_title_type (title,type(4)),
Index: database/database.pgsql
===================================================================
RCS file: /cvs/drupal/drupal/database/database.pgsql,v
retrieving revision 1.59
diff -u -r1.59 database.pgsql
--- database/database.pgsql	23 Feb 2004 17:45:03 -0000	1.59
+++ database/database.pgsql	4 Mar 2004 02:27:29 -0000
@@ -289,7 +289,7 @@
   body text NOT NULL default '',
   changed integer NOT NULL default '0',
   revisions text NOT NULL default '',
-  static integer NOT NULL default '0',
+  weight smallint NOT NULL default '0',
   PRIMARY KEY  (nid)
 );
 CREATE INDEX node_type_idx ON node(type);
Index: database/updates.inc
===================================================================
RCS file: /cvs/drupal/drupal/database/updates.inc,v
retrieving revision 1.1
diff -u -r1.1 updates.inc
--- database/updates.inc	25 Feb 2004 22:20:08 -0000	1.1
+++ database/updates.inc	4 Mar 2004 02:27:29 -0000
@@ -50,7 +50,8 @@
   "2004-01-11" => "update_76",
   "2004-01-13" => "update_77",
   "2004-02-03" => "update_78",
-  "2004-02-21" => "update_79"
+  "2004-02-21" => "update_79",
+  "2004-03-??: node weighting patch" => "update_80"
 );
 
 function update_32() {
@@ -760,6 +761,14 @@
   return $ret;
 }
 
+function update_80() {
+  $ret = array();
+  $ret[] = update_sql("ALTER TABLE {node} ADD weight tinyint(1) NOT NULL DEFAULT '0'");
+  $ret[] = update_sql("UPDATE {node} SET weight = -10 WHERE static = 1");
+  $ret[] = update_sql("ALTER TABLE {node} DROP static");
+  return $ret;
+}
+
 function update_sql($sql) {
   $edit = $_POST["edit"];
   $result = db_query($sql);
Index: includes/pager.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/pager.inc,v
retrieving revision 1.23
diff -u -r1.23 pager.inc
--- includes/pager.inc	15 Feb 2004 16:04:36 -0000	1.23
+++ includes/pager.inc	4 Mar 2004 02:27:29 -0000
@@ -15,8 +15,8 @@
  * by the query to (among others) compute the number of pages (= number of all
  * records / number of records per page). This is done by inserting "COUNT(*)"
  * in the original query, ie. by rewriting the original query, say "SELECT nid,
- * type FROM node WHERE status = '1' ORDER BY static DESC, created DESC" to read
- * "SELECT COUNT(*) FROM node WHERE status = '1' ORDER BY static DESC, created
+ * type FROM node WHERE status = '1' ORDER BY weight ASC, created DESC" to read
+ * "SELECT COUNT(*) FROM node WHERE status = '1' ORDER BY weight ASC, created
  * DESC". Rewriting the query is accomplished using a regular expression.
  *
  * Unfortunately, the rewrite rule does not always work as intended for queries
Index: includes/tablesort.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/tablesort.inc,v
retrieving revision 1.16
diff -u -r1.16 tablesort.inc
--- includes/tablesort.inc	10 Feb 2004 19:46:16 -0000	1.16
+++ includes/tablesort.inc	4 Mar 2004 02:27:29 -0000
@@ -20,9 +20,9 @@
   return $cgi;
 }
 
-function tablesort_sql($header) {
+function tablesort_sql($header, $before = "") {
   $ts = tablesort_init($header);
-  return " ORDER BY ". $ts['order_sql']. " ". strtoupper($ts['sort']);
+  return " ORDER BY ". $before. $ts['order_sql']. " ". strtoupper($ts['sort']);
 }
 
 function tablesort($cell, $header) {
Index: modules/blog.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/blog.module,v
retrieving revision 1.167
diff -u -r1.167 blog.module
--- modules/blog.module	15 Feb 2004 20:09:46 -0000	1.167
+++ modules/blog.module	4 Mar 2004 02:27:29 -0000
@@ -105,7 +105,7 @@
   $title = t("%name's blog", array("%name" => $account->name));
   $output = "";
 
-  $result = pager_query("SELECT nid FROM {node} WHERE type = 'blog' AND uid = '$account->uid' AND status = 1 ORDER BY nid DESC", variable_get("default_nodes_main", 10));
+  $result = pager_query("SELECT nid FROM {node} WHERE type = 'blog' AND uid = '$account->uid' AND status = 1 ORDER BY weight ASC, nid DESC", variable_get("default_nodes_main", 10));
   while ($node = db_fetch_object($result)) {
     $output .= node_view(node_load(array("nid" => $node->nid)), 1);
   }
Index: modules/forum.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/forum.module,v
retrieving revision 1.171
diff -u -r1.171 forum.module
--- modules/forum.module	16 Feb 2004 18:32:01 -0000	1.171
+++ modules/forum.module	4 Mar 2004 02:27:29 -0000
@@ -138,7 +138,7 @@
   if (!$main && $type == 'node' && $node->type == 'forum') {
     // get previous and next topic
 
-    $result = db_query('SELECT n.nid, n.title, GREATEST(n.created, MAX(c.timestamp)) AS date_sort, COUNT(c.nid) AS num_comments FROM {node} n INNER JOIN {forum} f ON n.nid = f.nid INNER JOIN {comments} c ON n.nid = c.nid WHERE n.nid = f.nid AND f.tid = %d AND n.status = 1 GROUP BY n.nid, n.title, n.created ORDER BY '. _forum_get_topic_order(isset($user->sortby) ? $user->sortby : variable_get('forum_order', 1)), $node->tid);
+    $result = db_query('SELECT n.nid, n.title, GREATEST(n.created, MAX(c.timestamp)) AS date_sort, COUNT(c.nid) AS num_comments FROM {node} n INNER JOIN {forum} f ON n.nid = f.nid INNER JOIN {comments} c ON n.nid = c.nid WHERE n.nid = f.nid AND f.tid = %d AND n.status = 1 GROUP BY n.nid, n.title, n.created ORDER BY n.weight ASC, '. _forum_get_topic_order(isset($user->sortby) ? $user->sortby : variable_get('forum_order', 1)), $node->tid);
 
     while ($topic = db_fetch_object($result)) {
       if ($stop == 1) {
@@ -354,7 +354,7 @@
   // @TODO: this is not ANSI SQL! ("user error: 'n.created' isn't in GROUP BY")
   // @TODO: timestamp is a sql reserved word. are there more?
   $sql = "SELECT n.nid, n.title, u.name AS name, u.uid AS uid, n.created AS timestamp, GREATEST(n.created, MAX(c.timestamp)) AS date_sort, COUNT(c.nid) AS num_comments, n.comment AS comment_mode, f.tid FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {users} u ON n.uid = u.uid LEFT JOIN {comments} c ON n.nid = c.nid INNER JOIN {forum} f ON n.nid = f.nid WHERE n.nid = r.nid AND ((r.tid = $check_tid AND f.shadow = 1) OR f.tid = $check_tid) AND n.status = 1 AND n.type = 'forum' GROUP BY n.nid, n.title, u.name, u.uid, n.created, n.comment, f.tid";
-  $sql .= tablesort_sql($forum_topic_list_header);
+  $sql .= tablesort_sql($forum_topic_list_header, 'n.weight ASC, ');
 
   $sql_count = "SELECT COUNT(DISTINCT(n.nid)) FROM {node} n INNER JOIN {forum} f ON n.nid = f.nid INNER JOIN {term_node} r ON n.nid = r.nid WHERE n.nid = r.nid AND ( (r.tid = $check_tid AND f.shadow = 1) OR f.tid = $check_tid) AND n.status = 1 AND n.type = 'forum'";
 
Index: modules/node.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/node.module,v
retrieving revision 1.340
diff -u -r1.340 node.module
--- modules/node.module	1 Mar 2004 19:45:33 -0000	1.340
+++ modules/node.module	4 Mar 2004 02:27:29 -0000
@@ -21,7 +21,7 @@
       <dt>An Author</dt><dd>The author's name. It will either be \"anonymous\" or a valid user. You <i>cannot</i> set it to an arbitrary value.</dd>
       <dt>Authored on</dt><dd>The date the node was written.</dd>
       <dt>Changed</dt><dd>The last time this node was changed.</dd>
-      <dt>Static on front page</dt><dd>The front page is configured to show the teasers from only a few of the total nodes you have on your site (To configure how many teasers <a href=\"%teaser\">click here</a>), but if you think a node is important enough that you want it to stay on the front page enable this.</dd>
+      <dt>Display weight</dt><dd>Nodes can be assigned a weight, which allows you to override the default sort order in node lists. Lighter nodes (smaller weight) \"float up\" towards the top of listings, while heavier ones \"sink down\" towards the bottom. Within each numerical weight, nodes are sorted by other means (typically chronologically).</dd>
       <dt>Allow user comments</dt><dd>A node can have comments. These comments can be written by other users (Read-write), or only by admins (Read-only).</dd>
       <dt>Revisions</dt><dd>Drupal has a revision system so that you can \"roll back\" to an older version of a post if the new version is not what you want.</dd>
       <dt>Promote to front page</dt><dd>To get people to look at the new stuff on your site you can choose to move it to the front page.</dd>
@@ -53,7 +53,7 @@
       $output = t("Enter a simple pattern to search for a post. This can include the wildcard character *.<br />For example, a search for \"br*\" might return \"bread bakers\", \"our daily bread\" and \"brenda\".");
       break;
     case 'admin/node/settings':
-      $output = t('This page lets you set the defaults used during creation of nodes for all the different node types.<br /><strong>comment:</strong> Read/write setting for comments.<br /><strong>publish:</strong> Is this node publicly viewable, has it been published?<br /><strong>promote:</strong> Is this node to be promoted to the front page?<br /><strong>moderate:</strong> Does this node need approval before it can be viewed?<br /><strong>static:</strong> Is this node always visible on the front page?<br /><strong>revision:</strong> Will this node go into the revision system allowing multiple versions to be saved?');
+      $output = t('This page lets you set the defaults used during creation of nodes for all the different node types.<br /><strong>comment:</strong> Read/write setting for comments.<br /><strong>publish:</strong> Is this node publicly viewable, has it been published?<br /><strong>promote:</strong> Is this node to be promoted to the front page?<br /><strong>moderate:</strong> Does this node need approval before it can be viewed?<br /><strong>revision:</strong> Will this node go into the revision system allowing multiple versions to be saved?');
       break;
 
   }
@@ -87,6 +87,11 @@
   return theme('item_list', $items, $title);
 }
 
+// Return the weight control for the content admin page
+function theme_node_weight_control($nid, $weight = 0) {
+  return "$weight<br /><input type=\"image\" border=\"0\" src=\"". theme('image', 'arrow-asc.gif'). "\" alt=\"".t('Down Arrow')."\" name=\"edit[weight_down]\" value=\"$nid\" title=\"".t('Move this node downward in the listing.')."\"/><input type=\"image\" border=\"0\" src=\"". theme('image', 'arrow-desc.gif'). "\" alt=\"".t('Up Arrow')."\" name=\"edit[weight_up]\" value=\"$nid\" title=\"".t('Move this node upward in the listing.')."\"/>";
+}
+
 // Update the 'last viewed' timestamp of the specified node for current user.
 function node_tag_new($nid) {
   global $user;
@@ -651,17 +656,16 @@
 function node_admin_nodes() {
   $filters = array(
     array(t('View posts that are new or updated'), 'ORDER BY n.changed DESC'),
+    array(t('View posts in front-page order'), 'ORDER BY n.weight ASC, n.created DESC'),
     array(t('View posts that need approval'), 'WHERE n.status = 0 OR n.moderate = 1 ORDER BY n.changed DESC'),
     array(t('View posts that are promoted'), 'WHERE n.status = 1 AND n.promote = 1 ORDER BY n.changed DESC'),
     array(t('View posts that are not promoted'), 'WHERE n.status = 1 AND n.promote = 0 ORDER BY n.changed DESC'),
-    array(t('View posts that are static'), 'WHERE n.status = 1 AND n.static = 1 ORDER BY n.changed DESC'),
     array(t('View posts that are unpublished'), 'WHERE n.status = 0 AND n.moderate = 0 ORDER BY n.changed DESC')
    );
 
   $operations = array(
     array(t('Approve the selected posts'), 'UPDATE {node} SET status = 1, moderate = 0 WHERE nid = %d'),
     array(t('Promote the selected posts'), 'UPDATE {node} SET status = 1, promote = 1 WHERE nid = %d'),
-    array(t('Make the selected posts static'), 'UPDATE {node} SET status = 1, static = 1 WHERE nid = %d'),
     array(t('Demote the selected posts'), 'UPDATE {node} SET promote = 0 WHERE nid = %d'),
     array(t('Unpublish the selected posts'), 'UPDATE {node} SET status = 0 WHERE nid = %d')
   );
@@ -679,10 +683,18 @@
   }
 
   if (isset($_POST['edit']['operation'])) {
-    $operation = $operations[$_POST['edit']['operation']][1];
-    foreach ($_POST['edit']['status'] as $nid => $value) {
-      if ($value) {
-        db_query($operation, $nid);
+    if (isset($_POST['edit']['weight_up'])) {
+      node_add_weight($_POST['edit']['weight_up'], 1);
+    }
+    else if (isset($_POST['edit']['weight_down'])) {
+      node_add_weight($_POST['edit']['weight_down'], -1);
+    }
+    else {
+      $operation = $operations[$_POST['edit']['operation']][1];
+      foreach ($_POST['edit']['status'] as $nid => $value) {
+        if ($value) {
+          db_query($operation, $nid);
+        }
       }
     }
 
@@ -726,14 +738,14 @@
   */
 
   $result = pager_query('SELECT n.*, u.name, u.uid FROM {node} n INNER JOIN {users} u ON n.uid = u.uid '. $filters[$filter][1], 50);
-  $header = array(NULL, t('title'), t('type'), t('author'), t('status'), array('data' => t('operations'), 'colspan' => 2));
+  $header = array(NULL, t('title'), t('type'), t('author'), t('status'), array('data' => t('operations'), 'colspan' => 2), t('weight'));
 
   while ($node = db_fetch_object($result)) {
-    $rows[] = array(form_checkbox(NULL, "status][$node->nid", 1, 0), l($node->title, "node/view/$node->nid") .' '. (node_is_new($node->nid, $node->changed) ? theme_mark() : ''), node_invoke($node, 'node_name'), format_name($node), ($node->status ? t('published') : t('not published')), l(t('edit node'), "admin/node/edit/$node->nid"), l(t('delete node'), "admin/node/delete/$node->nid"));
+    $rows[] = array(form_checkbox(NULL, "status][$node->nid", 1, 0), l($node->title, "node/view/$node->nid") .' '. (node_is_new($node->nid, $node->changed) ? theme('mark') : ''), node_invoke($node, 'node_name'), format_name($node), ($node->status ? t('published') : t('not published')), l(t('edit node'), "admin/node/edit/$node->nid"), l(t('delete node'), "admin/node/delete/$node->nid"), theme('node_weight_control', $node->nid, $node->weight));
   }
 
   if ($pager = theme('pager', NULL, 50, 0)) {
-    $rows[] = array(array('data' => $pager, 'colspan' => 7));
+    $rows[] = array(array('data' => $pager, 'colspan' => 8));
   }
 
   $output .= '<h3>'. $filters[$filter][0] .'</h3>';
@@ -1118,7 +1130,7 @@
     $node->status = variable_get("node_status_$node->type", 1);
     $node->promote = variable_get("node_promote_$node->type", 1);
     $node->moderate = variable_get("node_moderate_$node->type", 0);
-    $node->static = variable_get("node_static_$node->type", 0);
+    $node->weight = 0;
     $node->revision = variable_get("node_revision_$node->type", 0);
     unset($node->created);
   }
@@ -1179,7 +1191,7 @@
     $options .= form_checkbox(t('Published'), 'status', 1, isset($edit->status) ? $edit->status : variable_get('node_status_$edit->type', 1));
     $options .= form_checkbox(t('In moderation queue'), 'moderate', 1, isset($edit->moderate) ? $edit->moderate : variable_get("node_moderate_$edit->type", 0));
     $options .= form_checkbox(t('Promoted to front page'), 'promote', 1, isset($edit->promote) ? $edit->promote : variable_get("node_promote_$edit->type", 1));
-    $options .= form_checkbox(t('Static on front page'), 'static', 1, isset($edit->static) ? $edit->static : variable_get("node_static_$edit->type", 0));
+    $options .= form_weight(t('Display weight'), 'weight', isset($edit->weight) ? $edit->weight : 0);
     $options .= form_checkbox(t('Create new revision'), 'revision', 1, isset($edit->revision) ? $edit->revision : variable_get("node_revision_$edit->type", 0));
 
     $output .= "<div class=\"options\">";
@@ -1483,7 +1495,7 @@
 }
 
 function node_page_default() {
-  $result = pager_query('SELECT nid, type FROM {node} WHERE promote = 1 AND status = 1 ORDER BY static DESC, created DESC', variable_get('default_nodes_main', 10));
+  $result = pager_query('SELECT nid, type FROM {node} WHERE promote = 1 AND status = 1 ORDER BY weight ASC, created DESC', variable_get('default_nodes_main', 10));
 
   if (db_num_rows($result)) {
     drupal_set_html_head('<link rel="alternate" type="application/rss+xml" title="RSS" href="'. url('node/feed') .'" />');
@@ -1580,12 +1592,15 @@
       $output[t('publish')] = form_checkbox('', "node_status_$node->type", 1, variable_get("node_status_$node->type", 1));
       $output[t('promote')] = form_checkbox('', "node_promote_$node->type", 1, variable_get("node_promote_$node->type", 1));
       $output[t('moderate')] = form_checkbox('', "node_moderate_$node->type", 1, variable_get("node_moderate_$node->type", 0));
-      $output[t('static')] = form_checkbox('', "node_static_$node->type", 1, variable_get("node_static_$node->type", 0));
       $output[t('revision')] = form_checkbox('', "node_revision_$node->type", 1, variable_get("node_revision_$node->type", 0));
       return $output;
     case 'fields':
-      return array('nid', 'uid', 'type', 'title', 'teaser', 'body', 'revisions', 'status', 'promote', 'moderate', 'static', 'created', 'changed');
+      return array('nid', 'uid', 'type', 'title', 'teaser', 'body', 'revisions', 'status', 'promote', 'moderate', 'weight', 'created', 'changed');
   }
 }
 
+function node_add_weight($nid, $weight = 1) {
+  db_query('UPDATE {node} SET weight = weight + %d WHERE nid = %d', $weight, $nid);
+}
+
 ?>
Index: modules/taxonomy.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/taxonomy.module,v
retrieving revision 1.105
diff -u -r1.105 taxonomy.module
--- modules/taxonomy.module	21 Feb 2004 23:43:07 -0000	1.105
+++ modules/taxonomy.module	4 Mar 2004 02:27:29 -0000
@@ -669,11 +669,11 @@
 
   if ($taxonomy->str_tids) {
     if ($taxonomy->operator == "or") {
-      $sql = "SELECT DISTINCT(n.nid), n.title, n.type, n.created, n.changed, n.uid, n.static, n.created, u.name FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1' ORDER BY static DESC, created DESC";
+      $sql = "SELECT DISTINCT(n.nid), n.title, n.type, n.created, n.changed, n.uid, n.created, u.name FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1' ORDER BY weight ASC, created DESC";
       $sql_count = "SELECT COUNT(DISTINCT(n.nid)) FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1'";
     }
     else {
-      $sql = "SELECT n.nid, n.title, n.type, n.created, n.changed, n.uid, u.name FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1' GROUP BY n.nid, n.title, n.type, n.created, n.changed, n.uid, u.name HAVING COUNT(n.nid) = ". count($taxonomy->tids) ." ORDER BY static DESC, created DESC";
+      $sql = "SELECT n.nid, n.title, n.type, n.created, n.changed, n.uid, u.name FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid INNER JOIN {users} u ON n.uid = u.uid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1' GROUP BY n.nid, n.title, n.type, n.created, n.changed, n.uid, u.name HAVING COUNT(n.nid) = ". count($taxonomy->tids) ." ORDER BY weight ASC, created DESC";
 
       // Special trick as we could not find anything better:
       $count = db_num_rows(db_query("SELECT n.nid FROM {node} n INNER JOIN {term_node} r ON n.nid = r.nid WHERE r.tid IN ($taxonomy->str_tids) AND n.status = '1' GROUP BY n.nid HAVING COUNT(n.nid) = ". count($taxonomy->tids)));
Index: themes/chameleon/chameleon.theme
===================================================================
RCS file: /cvs/drupal/drupal/themes/chameleon/chameleon.theme,v
retrieving revision 1.9
diff -u -r1.9 chameleon.theme
--- themes/chameleon/chameleon.theme	25 Feb 2004 22:38:43 -0000	1.9
+++ themes/chameleon/chameleon.theme	4 Mar 2004 02:27:29 -0000
@@ -103,7 +103,7 @@
 
 function chameleon_node($node, $main = 0, $page = 0) {
 
-  $output  = "<div class=\"node\">\n";
+  $output  = "<div class=\"node\" id=\"node-weight-$node->weight\">\n";
 
   if (!$page) {
     $output .= " <h2 class=\"title\">". ($main ? l($node->title, "node/view/$node->nid") : $node->title) ."</h2>\n";
Index: themes/xtemplate/xtemplate.theme
===================================================================
RCS file: /cvs/drupal/drupal/themes/xtemplate/xtemplate.theme,v
retrieving revision 1.55
diff -u -r1.55 xtemplate.theme
--- themes/xtemplate/xtemplate.theme	19 Feb 2004 20:12:04 -0000	1.55
+++ themes/xtemplate/xtemplate.theme	4 Mar 2004 02:27:30 -0000
@@ -62,7 +62,7 @@
         "title"     => $node->title,
         "author"    => format_name($node),
         "date"      => format_date($node->created),
-        "static"    => ($main && $node->static) ? 'static' : '',
+        "weight"    => $node->weight,
         "content"   => ($main && $node->teaser) ? $node->teaser : $node->body));
 
   if ($page == 0) {
Index: themes/xtemplate/default/xtemplate.css
===================================================================
RCS file: /cvs/drupal/drupal/themes/xtemplate/default/xtemplate.css,v
retrieving revision 1.1
diff -u -r1.1 xtemplate.css
--- themes/xtemplate/default/xtemplate.css	15 Feb 2004 14:54:39 -0000	1.1
+++ themes/xtemplate/default/xtemplate.css	4 Mar 2004 02:27:30 -0000
@@ -209,7 +209,7 @@
 .node {
   margin: .5em 0 1em 0;
 }
-.static {
+#node-weight--10 {
   padding: .5em;
   background-color: #eee;
   border: solid 1px #ddd;
Index: themes/xtemplate/default/xtemplate.xtmpl
===================================================================
RCS file: /cvs/drupal/drupal/themes/xtemplate/default/xtemplate.xtmpl,v
retrieving revision 1.2
diff -u -r1.2 xtemplate.xtmpl
--- themes/xtemplate/default/xtemplate.xtmpl	19 Feb 2004 20:12:04 -0000	1.2
+++ themes/xtemplate/default/xtemplate.xtmpl	4 Mar 2004 02:27:30 -0000
@@ -55,7 +55,7 @@
 <!-- END: header -->
 
 <!-- BEGIN: node -->
-  <div class="node {static}">
+  <div class="node" id="node-weight-{weight}">
     <!-- BEGIN: avatar -->
     <div class="avatar">{avatar}</div>
     <!-- END: avatar -->
Index: themes/xtemplate/pushbutton/xtemplate.xtmpl
===================================================================
RCS file: /cvs/drupal/drupal/themes/xtemplate/pushbutton/xtemplate.xtmpl,v
retrieving revision 1.2
diff -u -r1.2 xtemplate.xtmpl
--- themes/xtemplate/pushbutton/xtemplate.xtmpl	23 Feb 2004 16:36:32 -0000	1.2
+++ themes/xtemplate/pushbutton/xtemplate.xtmpl	4 Mar 2004 02:27:30 -0000
@@ -58,7 +58,7 @@
 <!-- END: header -->
 
 <!-- BEGIN: node -->
-  <div class="node {static}">
+  <div class="node" id="node-weight-{weight}">
     <!-- BEGIN: avatar -->
     <div class="avatar">{avatar}</div>
     <!-- END: avatar -->
