mirror of
https://github.com/e107inc/e107.git
synced 2025-08-06 22:57:14 +02:00
Issue #60 - set proper user class tree during install - plus dev aid to generate appropriate xml (data should match the 'set default tree' available on an option button from userclass admin)
This commit is contained in:
@@ -670,7 +670,7 @@ $ns->tablerender(UCSLAN_21, $text);
|
|||||||
if (isset($_POST['flatten_class_tree']))
|
if (isset($_POST['flatten_class_tree']))
|
||||||
{ // Remove the default tree
|
{ // Remove the default tree
|
||||||
$message = UCSLAN_65;
|
$message = UCSLAN_65;
|
||||||
$sql->db_Update("userclass_classes", "userclass_parent='0'");
|
$sql->db_Update('userclass_classes', "userclass_parent='0'");
|
||||||
$e_userclass->calc_tree();
|
$e_userclass->calc_tree();
|
||||||
$e_userclass->save_tree();
|
$e_userclass->save_tree();
|
||||||
$e_userclass->readTree(TRUE); // Need to re-read the tree to show correct info
|
$e_userclass->readTree(TRUE); // Need to re-read the tree to show correct info
|
||||||
@@ -685,16 +685,23 @@ $ns->tablerender(UCSLAN_21, $text);
|
|||||||
$message .= UCSLAN_64;
|
$message .= UCSLAN_64;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($params == 'xml') $params = '.xml'; else $params = '';
|
||||||
|
|
||||||
|
if (isset($_POST['create_xml_db']) && ($params == '.xml'))
|
||||||
|
{
|
||||||
|
$message = $e_userclass->makeXMLFile() ? 'XML file created' : 'Error creating XML file';
|
||||||
|
}
|
||||||
|
|
||||||
if ($message)
|
if ($message)
|
||||||
{
|
{
|
||||||
$ns->tablerender("", "<div style='text-align:center'><b>".$message."</b></div>");
|
$ns->tablerender('', "<div style='text-align:center'><b>".$message."</b></div>");
|
||||||
}
|
}
|
||||||
|
|
||||||
$mes = e107::getMessage();
|
$mes = e107::getMessage();
|
||||||
|
|
||||||
$mes->addWarning(UCSLAN_52."<br />".UCSLAN_53);
|
$mes->addWarning(UCSLAN_52."<br />".UCSLAN_53);
|
||||||
|
|
||||||
$text = "<form method='post' action='".e_SELF."?options' id='treesetForm'>
|
$text = "<form method='post' action='".e_SELF."?options{$params}' id='treesetForm'>
|
||||||
<table class='table adminform'>
|
<table class='table adminform'>
|
||||||
<colgroup>
|
<colgroup>
|
||||||
<col class='col-label' />
|
<col class='col-label' />
|
||||||
@@ -710,8 +717,18 @@ $ns->tablerender(UCSLAN_21, $text);
|
|||||||
</td><td>
|
</td><td>
|
||||||
".$frm->admin_button('flatten_class_tree','no-value','delete', UCSLAN_58)."
|
".$frm->admin_button('flatten_class_tree','no-value','delete', UCSLAN_58)."
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>";
|
||||||
</table></form>";
|
if ($params == '.xml')
|
||||||
|
{
|
||||||
|
$text .= "<tr>
|
||||||
|
<td>".'Create XML file of DB'."<br /><span class='smalltext'>".'Dev aid to set initial values'."</span><br />
|
||||||
|
</td><td>
|
||||||
|
".$frm->admin_button('create_xml_db','no-value','create', 'Create')."
|
||||||
|
</td>
|
||||||
|
</tr>";
|
||||||
|
|
||||||
|
}
|
||||||
|
$text .= "</table></form>";
|
||||||
|
|
||||||
$ns->tablerender(UCSLAN_61, $mes->render().$text);
|
$ns->tablerender(UCSLAN_61, $mes->render().$text);
|
||||||
|
|
||||||
|
@@ -995,24 +995,145 @@ City, State, Country
|
|||||||
<dbTable name="page">
|
<dbTable name="page">
|
||||||
</dbTable>
|
</dbTable>
|
||||||
<dbTable name="userclass_classes">
|
<dbTable name="userclass_classes">
|
||||||
<item>
|
|
||||||
<field name="userclass_id">1</field>
|
|
||||||
<field name="userclass_name">PRIVATEMENU</field>
|
|
||||||
<field name="userclass_description">Grants access to private menu items</field>
|
|
||||||
<field name="userclass_editclass">254</field>
|
|
||||||
<field name="userclass_parent">0</field>
|
|
||||||
<field name="userclass_accum"></field>
|
|
||||||
<field name="userclass_visibility">0</field>
|
|
||||||
<field name="userclass_type">0</field>
|
|
||||||
<field name="userclass_icon"></field>
|
|
||||||
</item>
|
|
||||||
<item>
|
<item>
|
||||||
<field name="userclass_id">2</field>
|
<field name="userclass_id">2</field>
|
||||||
<field name="userclass_name">CONTACT PEOPLE</field>
|
<field name="userclass_name">CONTACT PEOPLE</field>
|
||||||
<field name="userclass_description">Example contact person class</field>
|
<field name="userclass_description">Example contact person class</field>
|
||||||
<field name="userclass_editclass">254</field>
|
<field name="userclass_editclass">254</field>
|
||||||
<field name="userclass_parent">0</field>
|
<field name="userclass_parent">0</field>
|
||||||
<field name="userclass_accum"></field>
|
<field name="userclass_accum">0,2</field>
|
||||||
|
<field name="userclass_visibility">0</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">253</field>
|
||||||
|
<field name="userclass_name">Members</field>
|
||||||
|
<field name="userclass_description">Registered and logged in members</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">0</field>
|
||||||
|
<field name="userclass_accum">0,253</field>
|
||||||
|
<field name="userclass_visibility">253</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">246</field>
|
||||||
|
<field name="userclass_name">Search Bots</field>
|
||||||
|
<field name="userclass_description">Identified search bots</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">0</field>
|
||||||
|
<field name="userclass_accum">0,246</field>
|
||||||
|
<field name="userclass_visibility">254</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">254</field>
|
||||||
|
<field name="userclass_name">Admin</field>
|
||||||
|
<field name="userclass_description">Site Administrators</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">249</field>
|
||||||
|
<field name="userclass_accum">254</field>
|
||||||
|
<field name="userclass_visibility">253</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">248</field>
|
||||||
|
<field name="userclass_name">Forum Moderators</field>
|
||||||
|
<field name="userclass_description">Moderators for Forums and other areas</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">249</field>
|
||||||
|
<field name="userclass_accum">248</field>
|
||||||
|
<field name="userclass_visibility">253</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">249</field>
|
||||||
|
<field name="userclass_name">Admins and Mods</field>
|
||||||
|
<field name="userclass_description">Anyone able to administer something, moderate forums etc</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">250</field>
|
||||||
|
<field name="userclass_accum">249,254,248</field>
|
||||||
|
<field name="userclass_visibility">253</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">1</field>
|
||||||
|
<field name="userclass_name">PRIVATEMENU</field>
|
||||||
|
<field name="userclass_description">Grants access to private menu items</field>
|
||||||
|
<field name="userclass_editclass">254</field>
|
||||||
|
<field name="userclass_parent">253</field>
|
||||||
|
<field name="userclass_accum">0,253,1</field>
|
||||||
|
<field name="userclass_visibility">0</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">247</field>
|
||||||
|
<field name="userclass_name">New Users</field>
|
||||||
|
<field name="userclass_description">Recently joined users</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">253</field>
|
||||||
|
<field name="userclass_accum">0,253,247</field>
|
||||||
|
<field name="userclass_visibility">254</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">250</field>
|
||||||
|
<field name="userclass_name">Main Admin</field>
|
||||||
|
<field name="userclass_description">Main site Administrators</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">255</field>
|
||||||
|
<field name="userclass_accum">250,249,254,248</field>
|
||||||
|
<field name="userclass_visibility">253</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">0</field>
|
||||||
|
<field name="userclass_name">Everyone (public)</field>
|
||||||
|
<field name="userclass_description">Fixed class</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">0</field>
|
||||||
|
<field name="userclass_accum">0</field>
|
||||||
|
<field name="userclass_visibility">0</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">252</field>
|
||||||
|
<field name="userclass_name">Guests</field>
|
||||||
|
<field name="userclass_description">Fixed class</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">0</field>
|
||||||
|
<field name="userclass_accum">252</field>
|
||||||
|
<field name="userclass_visibility">0</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">255</field>
|
||||||
|
<field name="userclass_name">No One (inactive)</field>
|
||||||
|
<field name="userclass_description">Fixed class</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">0</field>
|
||||||
|
<field name="userclass_accum">255</field>
|
||||||
|
<field name="userclass_visibility">0</field>
|
||||||
|
<field name="userclass_type">0</field>
|
||||||
|
<field name="userclass_icon"></field>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<field name="userclass_id">251</field>
|
||||||
|
<field name="userclass_name">Read Only</field>
|
||||||
|
<field name="userclass_description">Fixed class</field>
|
||||||
|
<field name="userclass_editclass">250</field>
|
||||||
|
<field name="userclass_parent">0</field>
|
||||||
|
<field name="userclass_accum">251</field>
|
||||||
<field name="userclass_visibility">0</field>
|
<field name="userclass_visibility">0</field>
|
||||||
<field name="userclass_type">0</field>
|
<field name="userclass_type">0</field>
|
||||||
<field name="userclass_icon"></field>
|
<field name="userclass_icon"></field>
|
||||||
|
@@ -1762,6 +1762,31 @@ class user_class_admin extends user_class
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Write the current userclass tree to the file e_TEMP.'userclasses.xml'
|
||||||
|
*
|
||||||
|
* @return TRUE on success, FALSE on fail.
|
||||||
|
*/
|
||||||
|
public function makeXMLFile()
|
||||||
|
{
|
||||||
|
$xml = "<dbTable name=\"userclass_classes\">\n";
|
||||||
|
foreach ($this->class_tree as $uc => $d)
|
||||||
|
{
|
||||||
|
$xml .= "\t<item>\n";
|
||||||
|
$xml .= "\t\t<field name=\"userclass_id\">{$uc}</field>\n";
|
||||||
|
foreach ($this->field_list as $f => $v)
|
||||||
|
{
|
||||||
|
$xml .= "\t\t<field name=\"{$f}\">{$d[$f]}</field>\n";
|
||||||
|
}
|
||||||
|
$xml .= "\t</item>\n";
|
||||||
|
}
|
||||||
|
$xml .= "</dbTable>\n";
|
||||||
|
return (file_put_contents(e_TEMP.'userclasses.xml', $xml) === FALSE) ? FALSE : TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Clear user class cache
|
* Clear user class cache
|
||||||
* @return none
|
* @return none
|
||||||
|
Reference in New Issue
Block a user