/** * Get the character set of an attachment * * @return string Character set name */ private function getAttachmentCharset() { if (!$this->isAttachment()) { trigger_error("attachmentCharset can only be retrieved for attachment items", E_USER_ERROR); } if ($this->attachmentData['charset'] !== null) { return $this->attachmentData['charset']; } if (!$this->id) { return ''; } $sql = "SELECT charsetID FROM itemAttachments WHERE itemID=?"; $stmt = Zotero_DB::getStatement($sql, true, Zotero_Shards::getByLibraryID($this->libraryID)); $charset = Zotero_DB::valueQueryFromStatement($stmt, $this->id); if ($charset) { $charset = Zotero_CharacterSets::getName($charset); } else { $charset = ''; } $this->attachmentData['charset'] = $charset; return $charset; }