| 1 |
<?php |
<?php |
| 2 |
// $Id: sheetnode.module,v 1.4.2.7.2.4 2008/12/30 11:00:39 kratib Exp $ |
// $Id: sheetnode.module,v 1.4.2.7.2.5 2008/12/30 11:34:08 kratib Exp $ |
| 3 |
|
|
| 4 |
function sheetnode_node_info() { |
function sheetnode_node_info() { |
| 5 |
return array( |
return array( |
| 104 |
EOS; |
EOS; |
| 105 |
} |
} |
| 106 |
|
|
| 107 |
|
function _sheetnode_sanitize_js($value) { |
| 108 |
|
$chars = array( |
| 109 |
|
chr(0xE2).chr(0x80).chr(0xA8), // Got this from Google Docs |
| 110 |
|
); |
| 111 |
|
return str_replace($chars, '', $value); |
| 112 |
|
} |
| 113 |
|
|
| 114 |
function sheetnode_insert($node) { |
function sheetnode_insert($node) { |
| 115 |
if ($node->sheetsave) { |
if ($node->sheetsave) { |
| 116 |
_sheetnode_save($node->nid, $node->sheetsave); |
_sheetnode_save($node->nid, $node->sheetsave); |
| 166 |
$value = db_result(db_query("SELECT value FROM {sheetnode} WHERE nid=%d", intval($sheetname))); |
$value = db_result(db_query("SELECT value FROM {sheetnode} WHERE nid=%d", intval($sheetname))); |
| 167 |
} |
} |
| 168 |
else { |
else { |
| 169 |
$value = db_result(db_query("SELECT value FROM {sheetnode} s INNER JOIN {node} n ON s.nid=n.nid WHERE UCASE(n.title)='%s'", strtoupper($sheetname))); |
$value = db_result(db_query("SELECT value FROM {sheetnode} s INNER JOIN {node} n ON s.nid=n.nid WHERE UCASE(n.title)='%s'", db_escape_string(strtoupper($sheetname)))); |
| 170 |
} |
} |
| 171 |
echo $value ? unserialize($value) : null; |
echo $value ? unserialize($value) : null; |
| 172 |
exit(); |
exit(); |
| 179 |
|
|
| 180 |
function _sheetnode_save($nid, $value) { |
function _sheetnode_save($nid, $value) { |
| 181 |
db_query("DELETE FROM {sheetnode} WHERE nid=%d", $nid); |
db_query("DELETE FROM {sheetnode} WHERE nid=%d", $nid); |
| 182 |
db_query("INSERT INTO {sheetnode} (nid, value) VALUES (%d, '%s')", $nid, serialize($value)); |
db_query("INSERT INTO {sheetnode} (nid, value) VALUES (%d, '%s')", $nid, serialize(_sheetnode_sanitize_js($value))); |
| 183 |
} |
} |
| 184 |
|
|
| 185 |
// @see http://forums.codecharge.com/posts.php?post_id=75694 |
// @see http://forums.codecharge.com/posts.php?post_id=75694 |