--- ejournal.module	2009-07-23 16:16:47.000000000 -0300
+++ ejournal.module	2010-06-01 14:46:39.000000000 -0300
@@ -2203,7 +2203,7 @@
 	} //new issue is created 
   else {
 		db_query("INSERT INTO {ejournal_issues} (jid, year, volume, number, custom_identification, cover_page_nid, date_published, status, issue_order, description) VALUES ('%d', '%s', '%s', '%s', '%s', '%s', '%d', '%d', '%d', '%s')",  $edit['jid'], $edit['year'], $edit['volume'], $edit['number'], $edit['custom_identification'], $edit['cover_page_nid'], $timestamp, $edit['status'], $edit['issue_order'], $edit['description']);
-		$edit['iid'] = db_last_insert_id('ejournal_journals', 'iid');    
+		$edit['iid'] = db_last_insert_id('ejournal_issues', 'iid');    
 	}
 
 	// now grant access to all articles that are in this issue 
@@ -2261,7 +2261,7 @@
     $restriction = ' AND n.status=1 ';
 	}
 
-  $articles = db_query(db_rewrite_sql("SELECT DISTINCT n.nid, n.type, n.title, n.changed, n.status, n.moderate, t.tid, td.name, ea.iid, ea.weight AS article_weight, ea.proofreader_mark AS p_status FROM {node} n INNER JOIN {ejournal_articles} ea ON n.nid = ea.nid LEFT JOIN {term_node} t ON n.nid=t.nid LEFT JOIN {term_data} td ON t.tid=td.tid WHERE ea.iid='" . $iid . "' AND ea.jid='" . $journal->jid . "' $vids $restriction ORDER BY ea.weight $order, td.weight $order, td.name $order, n.title $order"));
+  $articles = db_query(db_rewrite_sql("SELECT DISTINCT n.nid, n.type, n.title, n.changed, n.status, n.moderate, t.tid, td.name, td.weight, ea.iid, ea.weight AS article_weight, ea.proofreader_mark AS p_status FROM {node} n INNER JOIN {ejournal_articles} ea ON n.nid = ea.nid LEFT JOIN {term_node} t ON n.nid=t.nid LEFT JOIN {term_data} td ON t.tid=td.tid WHERE ea.iid='" . $iid . "' AND ea.jid='" . $journal->jid . "' $vids $restriction ORDER BY ea.weight $order, td.weight $order, td.name $order, n.title $order"));
 
 	$unique = array ();
 	while ($a = db_fetch_object($articles)) {
@@ -2501,13 +2501,16 @@
 
 function ejournal_article_from_journal($node) {  
 	static $ejnodes = array ();
-
+	
 	if (array_key_exists($node->nid, $ejnodes)) {
 		return $ejnodes[$node->nid];
 	}
-  
+	
 	// user may have changed journal-node_type relation after some nodes were already created  
-	$jid = db_result(db_query("SELECT jid FROM {ejournal_articles} WHERE nid='%s'", $node->nid));
+	if ($node->nid) {
+	  $jid = db_result(db_query("SELECT jid FROM {ejournal_articles} WHERE nid='%s'", $node->nid));
+	}
+	
 	if ($jid) {
 		$ejnodes[$node->nid] = $jid;
 		return $jid;
