aboutsummaryrefslogtreecommitdiffstats
path: root/doc/old/html/include_2attach_8php.html
diff options
context:
space:
mode:
Diffstat (limited to 'doc/old/html/include_2attach_8php.html')
-rw-r--r--doc/old/html/include_2attach_8php.html819
1 files changed, 819 insertions, 0 deletions
diff --git a/doc/old/html/include_2attach_8php.html b/doc/old/html/include_2attach_8php.html
new file mode 100644
index 000000000..5af6df034
--- /dev/null
+++ b/doc/old/html/include_2attach_8php.html
@@ -0,0 +1,819 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.3.1"/>
+<title>The Red Matrix: include/attach.php File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="rm-64.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">The Red Matrix
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Classes</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>File&#160;Members</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('include_2attach_8php.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">attach.php File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>File/attach API with the potential for revision control.
+<a href="#details">More...</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a6fdd92775f31c07d2863e16e0026018a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a6fdd92775f31c07d2863e16e0026018a">z_mime_content_type</a> ($filename)</td></tr>
+<tr class="memdesc:a6fdd92775f31c07d2863e16e0026018a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Guess the mimetype from file ending. <a href="#a6fdd92775f31c07d2863e16e0026018a">More...</a><br/></td></tr>
+<tr class="separator:a6fdd92775f31c07d2863e16e0026018a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a887d2d44a3ef18dcb6624e7fb58dc8e3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a887d2d44a3ef18dcb6624e7fb58dc8e3">attach_count_files</a> ($channel_id, $observer, $hash= '', $filename= '', $filetype= '')</td></tr>
+<tr class="memdesc:a887d2d44a3ef18dcb6624e7fb58dc8e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Count files/attachments. <a href="#a887d2d44a3ef18dcb6624e7fb58dc8e3">More...</a><br/></td></tr>
+<tr class="separator:a887d2d44a3ef18dcb6624e7fb58dc8e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3634af95f11a023dd8e882c3c7a3600d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a3634af95f11a023dd8e882c3c7a3600d">attach_list_files</a> ($channel_id, $observer, $hash= '', $filename= '', $filetype= '', $orderby= 'created desc', $start=0, $entries=0)</td></tr>
+<tr class="memdesc:a3634af95f11a023dd8e882c3c7a3600d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a list of files/attachments. <a href="#a3634af95f11a023dd8e882c3c7a3600d">More...</a><br/></td></tr>
+<tr class="separator:a3634af95f11a023dd8e882c3c7a3600d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d07c5b83d3d54e186f752e571847b36"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a0d07c5b83d3d54e186f752e571847b36">attach_by_hash</a> ($hash, $rev=0)</td></tr>
+<tr class="memdesc:a0d07c5b83d3d54e186f752e571847b36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find an attachment by hash and revision. <a href="#a0d07c5b83d3d54e186f752e571847b36">More...</a><br/></td></tr>
+<tr class="separator:a0d07c5b83d3d54e186f752e571847b36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad991208ce939387e2f93a3bce7d09932"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#ad991208ce939387e2f93a3bce7d09932">attach_by_hash_nodata</a> ($hash, $rev=0)</td></tr>
+<tr class="memdesc:ad991208ce939387e2f93a3bce7d09932"><td class="mdescLeft">&#160;</td><td class="mdescRight">Find an attachment by hash and revision. <a href="#ad991208ce939387e2f93a3bce7d09932">More...</a><br/></td></tr>
+<tr class="separator:ad991208ce939387e2f93a3bce7d09932"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a84a8a64c4805e1525b42d4add464833f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a84a8a64c4805e1525b42d4add464833f">attach_store</a> ($channel, $observer_hash, $options= '', $arr=null)</td></tr>
+<tr class="separator:a84a8a64c4805e1525b42d4add464833f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb07968990e66a88c95483ca09a7f909"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#aeb07968990e66a88c95483ca09a7f909">z_readdir</a> ($channel_id, $observer_hash, $pathname, $parent_hash= '')</td></tr>
+<tr class="separator:aeb07968990e66a88c95483ca09a7f909"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6830b3ab74a5d284876141ac80f6cbc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#ab6830b3ab74a5d284876141ac80f6cbc">attach_mkdir</a> ($channel, $observer_hash, $arr=null)</td></tr>
+<tr class="memdesc:ab6830b3ab74a5d284876141ac80f6cbc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create directory. <a href="#ab6830b3ab74a5d284876141ac80f6cbc">More...</a><br/></td></tr>
+<tr class="separator:ab6830b3ab74a5d284876141ac80f6cbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c0875eafb8c0f8a0620ff7a875a2221"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a5c0875eafb8c0f8a0620ff7a875a2221">attach_change_permissions</a> ($channel_id, $resource, $allow_cid, $allow_gid, $deny_cid, $deny_gid, $recurse=false)</td></tr>
+<tr class="memdesc:a5c0875eafb8c0f8a0620ff7a875a2221"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes permissions of a file. <a href="#a5c0875eafb8c0f8a0620ff7a875a2221">More...</a><br/></td></tr>
+<tr class="separator:a5c0875eafb8c0f8a0620ff7a875a2221"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70bd666e080c2af5a91f5d14c297b8cd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a70bd666e080c2af5a91f5d14c297b8cd">attach_delete</a> ($channel_id, $resource)</td></tr>
+<tr class="memdesc:a70bd666e080c2af5a91f5d14c297b8cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete a file. <a href="#a70bd666e080c2af5a91f5d14c297b8cd">More...</a><br/></td></tr>
+<tr class="separator:a70bd666e080c2af5a91f5d14c297b8cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6aa00ea010ea030110faefb75eafc1ce"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a6aa00ea010ea030110faefb75eafc1ce">get_cloudpath</a> ($arr)</td></tr>
+<tr class="memdesc:a6aa00ea010ea030110faefb75eafc1ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns path to file in cloud/. <a href="#a6aa00ea010ea030110faefb75eafc1ce">More...</a><br/></td></tr>
+<tr class="separator:a6aa00ea010ea030110faefb75eafc1ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d72ef7cb940f6868e3e2a841cadfe8f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a1d72ef7cb940f6868e3e2a841cadfe8f">get_parent_cloudpath</a> ($channel_id, $channel_name, $attachHash)</td></tr>
+<tr class="memdesc:a1d72ef7cb940f6868e3e2a841cadfe8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns path to parent folder in cloud/. <a href="#a1d72ef7cb940f6868e3e2a841cadfe8f">More...</a><br/></td></tr>
+<tr class="separator:a1d72ef7cb940f6868e3e2a841cadfe8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a052f14487ff2ce72f62a09fac8d7e997"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a052f14487ff2ce72f62a09fac8d7e997">find_folder_hash_by_attach_hash</a> ($channel_id, $attachHash)</td></tr>
+<tr class="separator:a052f14487ff2ce72f62a09fac8d7e997"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4dbfd7e1cef52aa9ef52f4b88929fa86"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a4dbfd7e1cef52aa9ef52f4b88929fa86">find_filename_by_hash</a> ($channel_id, $attachHash)</td></tr>
+<tr class="separator:a4dbfd7e1cef52aa9ef52f4b88929fa86"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d484de2d19a93071571d6499a50ae34"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="include_2attach_8php.html#a5d484de2d19a93071571d6499a50ae34">pipe_streams</a> ($in, $out)</td></tr>
+<tr class="separator:a5d484de2d19a93071571d6499a50ae34"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>File/attach API with the potential for revision control. </p>
+<p>TODO: a filesystem storage abstraction which maintains security (and 'data' contains a system filename which is inaccessible from the web). This could get around PHP storage limits and store videos and larger items, using fread or OS methods or native code to read/write or chunk it through. Also an 'append' option to the storage function might be a useful addition. </p>
+</div><h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a0d07c5b83d3d54e186f752e571847b36"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">attach_by_hash </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$hash</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$rev</em> = <code>0</code>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Find an attachment by hash and revision. </p>
+<p>Returns the entire attach structure including data.</p>
+<p>This could exhaust memory so most useful only when immediately sending the data.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$hash</td><td></td></tr>
+ <tr><td class="paramname">$rev</td><td></td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Referenced by <a class="el" href="mod_2attach_8php.html#aa88eb5ad87aa1036a30e70339cc6c1b1">attach_init()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ad991208ce939387e2f93a3bce7d09932"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">attach_by_hash_nodata </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$hash</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$rev</em> = <code>0</code>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Find an attachment by hash and revision. </p>
+<p>Returns the entire attach structure excluding data.</p>
+<dl class="section see"><dt>See Also</dt><dd><a class="el" href="include_2attach_8php.html#a0d07c5b83d3d54e186f752e571847b36" title="Find an attachment by hash and revision.">attach_by_hash()</a> </dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$hash</td><td></td></tr>
+ <tr><td class="paramname">$ref</td><td></td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Referenced by <a class="el" href="item_8php.html#a693cd09805755ab85bbb5ecae69a48c3">item_post()</a>, and <a class="el" href="include_2message_8php.html#a751ffd6635022b2190f56154ee745752">send_message()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a5c0875eafb8c0f8a0620ff7a875a2221"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">attach_change_permissions </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$resource</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$allow_cid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$allow_gid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$deny_cid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$deny_gid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$recurse</em> = <code>false</code>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Changes permissions of a file. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$channel_id</td><td></td></tr>
+ <tr><td class="paramname">$resource</td><td></td></tr>
+ <tr><td class="paramname">$allow_cid</td><td></td></tr>
+ <tr><td class="paramname">$allow_gid</td><td></td></tr>
+ <tr><td class="paramname">$deny_cid</td><td></td></tr>
+ <tr><td class="paramname">$deny_gid</td><td></td></tr>
+ <tr><td class="paramname">$recurse</td><td></td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Referenced by <a class="el" href="filestorage_8php.html#ad3b64e3ece9831f9d3a9f00c0ae983cd">filestorage_post()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a887d2d44a3ef18dcb6624e7fb58dc8e3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">attach_count_files </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$observer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$hash</em> = <code>''</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$filename</em> = <code>''</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$filetype</em> = <code>''</code>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Count files/attachments. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$channel_id</td><td></td></tr>
+ <tr><td class="paramname">$observer</td><td></td></tr>
+ <tr><td class="paramname">$hash</td><td>(optional) </td></tr>
+ <tr><td class="paramname">$filename</td><td>(optional) </td></tr>
+ <tr><td class="paramname">$filetype</td><td>(optional) </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>array $ret['success'] boolean $ret['results'] amount of found results, or false $ret['message'] string with error messages if any </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a70bd666e080c2af5a91f5d14c297b8cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">attach_delete </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$resource</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Delete a file. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$channel_id</td><td></td></tr>
+ <tr><td class="paramname">$resource</td><td></td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Referenced by <a class="el" href="classRedDirectory.html#a2d12d99d38a6a75fc9a830b2f7fc0bf0">RedDirectory\createFile()</a>, <a class="el" href="classRedFile.html#aef71c9eaac7052be7dc8602eb12171e7">RedFile\delete()</a>, <a class="el" href="filestorage_8php.html#a61bb1be78472555df4ce619f51014040">filestorage_content()</a>, and <a class="el" href="classRedFile.html#a41a49a583eb276b75626fcf97f4a699c">RedFile\put()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a3634af95f11a023dd8e882c3c7a3600d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">attach_list_files </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$observer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$hash</em> = <code>''</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$filename</em> = <code>''</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$filetype</em> = <code>''</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$orderby</em> = <code>'created&#160;desc'</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$start</em> = <code>0</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$entries</em> = <code>0</code>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a list of files/attachments. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$channel_id</td><td></td></tr>
+ <tr><td class="paramname">$observer</td><td></td></tr>
+ <tr><td class="paramname">$hash</td><td>(optional) </td></tr>
+ <tr><td class="paramname">$filename</td><td>(optional) </td></tr>
+ <tr><td class="paramname">$filetype</td><td>(optional) </td></tr>
+ <tr><td class="paramname">$orderby</td><td></td></tr>
+ <tr><td class="paramname">$start</td><td></td></tr>
+ <tr><td class="paramname">$entries</td><td></td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>array $ret['success'] boolean $ret['results'] array with results, or false $ret['message'] string with error messages if any </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ab6830b3ab74a5d284876141ac80f6cbc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">attach_mkdir </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$observer_hash</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$arr</em> = <code>null</code>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create directory. </p>
+<p>attach_mkdir($channel,$observer_hash,$arr);</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$channel</td><td>channel array of owner </td></tr>
+ <tr><td class="paramname">$observer_hash</td><td>hash of current observer </td></tr>
+ <tr><td class="paramname">$arr</td><td>parameter array to fulfil request Required: $arr['filename'] $arr['folder'] // hash of parent directory, empty string for root directory Optional: $arr['hash'] // precumputed hash for this node $arr['allow_cid'] $arr['allow_gid'] $arr['deny_cid'] $arr['deny_gid'] </td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Referenced by <a class="el" href="classRedDirectory.html#a986936910f0216887a25e28916c166c7">RedDirectory\createDirectory()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a84a8a64c4805e1525b42d4add464833f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">attach_store </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$observer_hash</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$options</em> = <code>''</code>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$arr</em> = <code>null</code>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$channel</td><td>channel array of owner </td></tr>
+ <tr><td class="paramname">$observer_hash</td><td>hash of current observer </td></tr>
+ <tr><td class="paramname">$options</td><td>(optional) </td></tr>
+ <tr><td class="paramname">$arr</td><td>(optional) </td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Referenced by <a class="el" href="item_8php.html#a3daae7944f737bd30412a0d042207c0f">fix_attached_file_permissions()</a>, <a class="el" href="importelm_8php.html#a1a4f71e6d76ace6add5e9659845f5e5f">importelm_post()</a>, <a class="el" href="include_2message_8php.html#a751ffd6635022b2190f56154ee745752">send_message()</a>, and <a class="el" href="wall__attach_8php.html#a7385e970e93228d082f0fd7254f6e653">wall_attach_post()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a4dbfd7e1cef52aa9ef52f4b88929fa86"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">find_filename_by_hash </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$attachHash</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Referenced by <a class="el" href="include_2attach_8php.html#a1d72ef7cb940f6868e3e2a841cadfe8f">get_parent_cloudpath()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a052f14487ff2ce72f62a09fac8d7e997"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">find_folder_hash_by_attach_hash </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$attachHash</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Referenced by <a class="el" href="include_2attach_8php.html#a1d72ef7cb940f6868e3e2a841cadfe8f">get_parent_cloudpath()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a6aa00ea010ea030110faefb75eafc1ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">get_cloudpath </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$arr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns path to file in cloud/. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$arr</td><td></td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>string with the path the file to cloud/ </dd></dl>
+
+<p>Referenced by <a class="el" href="filestorage_8php.html#a61bb1be78472555df4ce619f51014040">filestorage_content()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a1d72ef7cb940f6868e3e2a841cadfe8f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">get_parent_cloudpath </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel_name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$attachHash</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns path to parent folder in cloud/. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$arr</td><td></td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>string with the folder path </dd></dl>
+
+<p>Referenced by <a class="el" href="filestorage_8php.html#a61bb1be78472555df4ce619f51014040">filestorage_content()</a>, and <a class="el" href="filestorage_8php.html#ad3b64e3ece9831f9d3a9f00c0ae983cd">filestorage_post()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a5d484de2d19a93071571d6499a50ae34"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pipe_streams </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$in</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$in</td><td></td></tr>
+ <tr><td class="paramname">$out</td><td></td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p>Referenced by <a class="el" href="mod_2attach_8php.html#aa88eb5ad87aa1036a30e70339cc6c1b1">attach_init()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a6fdd92775f31c07d2863e16e0026018a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">z_mime_content_type </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Guess the mimetype from file ending. </p>
+<p>This function takes a file name and guess the mimetype from the filename extension.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">$filename</td><td>a string filename </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>string The mimetype according to a file ending. </dd></dl>
+
+<p>Referenced by <a class="el" href="include_2attach_8php.html#a84a8a64c4805e1525b42d4add464833f">attach_store()</a>, and <a class="el" href="classRedDirectory.html#a2d12d99d38a6a75fc9a830b2f7fc0bf0">RedDirectory\createFile()</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="aeb07968990e66a88c95483ca09a7f909"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">z_readdir </td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$channel_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$observer_hash</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$pathname</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>$parent_hash</em> = <code>''</code>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Read a virtual directory and return contents, checking permissions of all parent components. z_readdir </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramtype">integer</td><td class="paramname">$channel_id</td><td></td></tr>
+ <tr><td class="paramtype">string</td><td class="paramname">$observer_hash</td><td>hash of current observer </td></tr>
+ <tr><td class="paramtype">string</td><td class="paramname">$pathname</td><td></td></tr>
+ <tr><td class="paramtype">string</td><td class="paramname">$parent_hash</td><td>(optional)</td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>array $ret $ret['success'] = boolean true or false $ret['message'] = error message if success is false $ret['data'] = array of attach DB entries without data component </dd></dl>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+