www/rec_duplicate.php

Sat, 23 May 2020 20:53:48 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Sat, 23 May 2020 20:53:48 +0200
changeset 691
9c21125f584e
parent 305
bb55e065888a
permissions
-rw-r--r--

Added clone command to the equipment inventory.

303
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 <?php
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 require_once('config.php');
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4 $link = mysqli_connect(DBASE_HOST,DBASE_USER,DBASE_PASS,DBASE_NAME);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 if (! $link) {
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6 die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error());
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 }
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 if (! mysqli_set_charset($link, "utf8" )) {
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 echo "error";
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 return 1;
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 }
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12
305
bb55e065888a Fix escape single quotes
Michiel Broek <mbroek@mbse.eu>
parents: 303
diff changeset
13 $rescapers = array("'");
bb55e065888a Fix escape single quotes
Michiel Broek <mbroek@mbse.eu>
parents: 303
diff changeset
14 $rreplacements = array("\\'");
bb55e065888a Fix escape single quotes
Michiel Broek <mbroek@mbse.eu>
parents: 303
diff changeset
15
303
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 date_default_timezone_set('Europe/Amsterdam');
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17 if (isset($_GET["record"]))
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
18 $record = $_GET["record"];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
19 else
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
20 $record = 78;
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21 $result = mysqli_query($link, "SELECT * FROM recipes WHERE record='".$record."'");
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
22 $row = mysqli_fetch_array($result);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
24 /*
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
25 * Make this duplicate a fresh recipe.
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
26 */
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
27 $sql = "INSERT INTO `recipes` SET ";
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28 $sql .= "name='" . mysqli_real_escape_string($link, $row['name']) . ' [duplicate]';
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29 $sql .= "', uuid='" . str_replace("\n", "", file_get_contents('/proc/sys/kernel/random/uuid'));
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
30 $sql .= "', notes='" . mysqli_real_escape_string($link, $row['notes']);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31 $sql .= "', locked='0";
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
32 $sql .= "', st_name='" . mysqli_real_escape_string($link, $row['st_name']);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
33 $sql .= "', st_letter='" . mysqli_real_escape_string($link, $row['st_letter']);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
34 $sql .= "', st_guide='" . mysqli_real_escape_string($link, $row['st_guide']);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35 $sql .= "', st_type='" . $row['st_type'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
36 $sql .= "', st_category='" . mysqli_real_escape_string($link, $row['st_category']);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
37 $sql .= "', st_category_number='" . $row['st_category_number'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
38 $sql .= "', st_og_min='" . $row['st_og_min'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39 $sql .= "', st_og_max='" . $row['st_og_max'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
40 $sql .= "', st_fg_min='" . $row['st_fg_min'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
41 $sql .= "', st_fg_max='" . $row['st_fg_max'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
42 $sql .= "', st_ibu_min='" . $row['st_ibu_min'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
43 $sql .= "', st_ibu_max='" . $row['st_ibu_max'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
44 $sql .= "', st_color_min='" . $row['st_color_min'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
45 $sql .= "', st_color_max='" . $row['st_color_max'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
46 $sql .= "', st_carb_min='" . $row['st_carb_min'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
47 $sql .= "', st_carb_max='" . $row['st_carb_max'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
48 $sql .= "', st_abv_min='" . $row['st_abv_min'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
49 $sql .= "', st_abv_max='" . $row['st_abv_max'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
50 $sql .= "', type='" . $row['type'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
51 $sql .= "', batch_size='" . $row['batch_size'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
52 $sql .= "', boil_size='" . $row['boil_size'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
53 $sql .= "', boil_time='" . $row['boil_time'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
54 $sql .= "', efficiency='" . $row['efficiency'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
55 $sql .= "', est_og='" . $row['est_og'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
56 $sql .= "', est_fg='" . $row['est_fg'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
57 $sql .= "', est_abv='" . $row['est_abv'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
58 $sql .= "', est_carb='" . $row['est_carb'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
59 $sql .= "', est_color='" . $row['est_color'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
60 $sql .= "', color_method='" . $row['color_method'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
61 $sql .= "', est_ibu='" . $row['est_ibu'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
62 $sql .= "', ibu_method='" . $row['ibu_method'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
63 $sql .= "', sparge_temp='" . $row['sparge_temp'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
64 $sql .= "', sparge_ph='" . $row['sparge_ph'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
65 $sql .= "', sparge_volume='" . $row['sparge_volume'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
66 $sql .= "', sparge_source='" . $row['sparge_source'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
67 $sql .= "', sparge_acid_type='" . $row['sparge_acid_type'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
68 $sql .= "', sparge_acid_perc='" . $row['sparge_acid_perc'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
69 $sql .= "', sparge_acid_amount='0";
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
70 $sql .= "', mash_ph='" . $row['mash_ph'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
71 $sql .= "', mash_name='" . $row['mash_name'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
72 $sql .= "', calc_acid='" . $row['calc_acid'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
73 $sql .= "', w1_name='" . mysqli_real_escape_string($link, $row['w1_name']);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
74 $sql .= "', w1_amount='" . $row['w1_amount'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
75 $sql .= "', w1_calcium='" . $row['w1_calcium'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
76 $sql .= "', w1_sulfate='" . $row['w1_sulfate'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
77 $sql .= "', w1_chloride='" . $row['w1_chloride'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
78 $sql .= "', w1_sodium='" . $row['w1_sodium'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
79 $sql .= "', w1_magnesium='" . $row['w1_magnesium'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
80 $sql .= "', w1_total_alkalinity='" . $row['w1_total_alkalinity'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
81 $sql .= "', w1_ph='" . $row['w1_ph'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
82 $sql .= "', w1_cost='" . $row['w1_cost'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
83 $sql .= "', w2_name='" . mysqli_real_escape_string($link, $row['w2_name']);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
84 $sql .= "', w2_amount='" . $row['w2_amount'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
85 $sql .= "', w2_calcium='" . $row['w2_calcium'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
86 $sql .= "', w2_sulfate='" . $row['w2_sulfate'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
87 $sql .= "', w2_chloride='" . $row['w2_chloride'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
88 $sql .= "', w2_sodium='" . $row['w2_sodium'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
89 $sql .= "', w2_magnesium='" . $row['w2_magnesium'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
90 $sql .= "', w2_total_alkalinity='" . $row['w2_total_alkalinity'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
91 $sql .= "', w2_ph='" . $row['w2_ph'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
92 $sql .= "', w2_cost='" . $row['w2_cost'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
93 $sql .= "', wa_acid_name='" . $row['wa_acid_name'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
94 $sql .= "', wa_acid_perc='" . $row['wa_acid_perc'];
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
95 $sql .= "', wa_base_name='" . $row['wa_base_name'];
305
bb55e065888a Fix escape single quotes
Michiel Broek <mbroek@mbse.eu>
parents: 303
diff changeset
96 $sql .= "', json_fermentables='" . str_replace($rescapers,$rreplacements,$row['json_fermentables']);
bb55e065888a Fix escape single quotes
Michiel Broek <mbroek@mbse.eu>
parents: 303
diff changeset
97 $sql .= "', json_hops='" . str_replace($rescapers,$rreplacements,$row['json_hops']);
bb55e065888a Fix escape single quotes
Michiel Broek <mbroek@mbse.eu>
parents: 303
diff changeset
98 $sql .= "', json_miscs='" . str_replace($rescapers,$rreplacements,$row['json_miscs']);
bb55e065888a Fix escape single quotes
Michiel Broek <mbroek@mbse.eu>
parents: 303
diff changeset
99 $sql .= "', json_yeasts='" . str_replace($rescapers,$rreplacements,$row['json_yeasts']);
bb55e065888a Fix escape single quotes
Michiel Broek <mbroek@mbse.eu>
parents: 303
diff changeset
100 $sql .= "', json_mashs='" . str_replace($rescapers,$rreplacements,$row['json_mashs']);
303
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
101 $sql .= "';";
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
102 syslog(LOG_NOTICE, $sql);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
103
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
104 $result = mysqli_query($link, $sql);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
105 if (! $result) {
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
106 syslog(LOG_NOTICE, "rec_duplicate: result: ".mysqli_error($link));
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
107 } else {
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
108 $lastid = mysqli_insert_id($link);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
109 syslog(LOG_NOTICE, "rec_duplicate: inserted record ".$lastid);
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
110 }
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
111 echo "<script>window.close();</script>";
98c2afc88780 Added recipe export menu.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
112 exit;

mercurial