public static function getAllOeuvreMaterials()
{
$database = DatabaseFactory::getFactory()->getConnection();
$sql = "SELECT o.oeuvre_id, o.oeuvre_name, m.material_id, material_name, material_price, material_weight, material_dimension_high, material_dimension_width,\n material_dimension_profound, material_provider_id, material_has_photoMaterial, material_description, quantity\n FROM oeuvres_materials AS om, materials AS m, oeuvres AS o WHERE m.material_id = om.material_id AND o.oeuvre_id = om.oeuvre_id ";
$query = $database->prepare($sql);
$query->execute();
$all_materials = array();
foreach ($query->fetchAll() as $material) {
// all elements of array passed to Filter::XSSFilter for XSS sanitation, have a look into
// application/core/Filter.php for more info on how to use. Removes (possibly bad) JavaScript etc from
// the material's values
array_walk_recursive($material, 'Filter::XSSFilter');
$all_materials[$material->material_id] = new stdClass();
$all_materials[$material->material_id]->oeuvre_id = $material->oeuvre_id;
$all_materials[$material->material_id]->oeuvre_name = $material->oeuvre_name;
$all_materials[$material->material_id]->material_id = $material->material_id;
$all_materials[$material->material_id]->material_name = $material->material_name;
$all_materials[$material->material_id]->material_price = $material->material_price;
$all_materials[$material->material_id]->material_weight = $material->material_weight;
$all_materials[$material->material_id]->material_dimension_high = $material->material_dimension_high;
$all_materials[$material->material_id]->material_dimension_width = $material->material_dimension_width;
$all_materials[$material->material_id]->material_dimension_profound = $material->material_dimension_profound;
$all_materials[$material->material_id]->material_provider_id = $material->material_provider_id;
$all_materials[$material->material_id]->material_photoMaterial_link = Config::get('USE_GRAVATAR') ? AvatarModel::getGravatarLinkByEmail($user->user_email) : MaterialModel::getPublicPhotoMaterialFilePathOfMaterial($material->material_has_photoMaterial, $material->material_id);
$all_materials[$material->material_id]->material_description = $material->material_description;
$all_materials[$material->material_id]->quantity = $material->quantity;
}
return $all_materials;
}