public static function renderFormInteriorForNewSpecimen($unique_str, $db_connection) { $s = Specimen::createNewSpecimenForNotebookPage(0, $db_connection); $s->specimen_id = $unique_str; $rendered = '<h3><input type="text" name="specimen-name_' . $s->specimen_id . '" id="specimen-name_' . $s->specimen_id . '" value="' . htmlentities($s->name) . '"/></h3>' . "\n" . '<ul class="base-info">' . "\n" . ' <li><div class="field-label">' . util_lang('coordinates') . '</div> : <div class="field-value"><input type="text" name="specimen-gps_longitude_' . $s->specimen_id . '" id="specimen-gps_longitude_' . $s->specimen_id . '" value="' . htmlentities($s->gps_longitude) . '"/>, <input type="text" name="specimen-gps_latitude_' . $s->specimen_id . '" id="specimen-gps_latitude_' . $s->specimen_id . '" value="' . htmlentities($s->gps_latitude) . '"/></div></li>' . "\n" . ' <li><div class="field-label">' . util_lang('notes') . '</div> : <div class="field-value"><textarea name="specimen-notes_' . $s->specimen_id . '" id="specimen-notes_' . $s->specimen_id . '" class="specimen-notes" row="4" cols="120">' . htmlentities($s->notes) . '</textarea></div></li>' . "\n" . ' <li><div class="field-label">' . util_lang('catalog_identifier') . '</div> : <div class="field-value"><input type="text" name="specimen-catalog_identifier_' . $s->specimen_id . '" id="specimen-catalog_identifier_' . $s->specimen_id . '" value="' . htmlentities($s->catalog_identifier) . '"/></div></li>' . "\n" . ' <li><b><i>' . util_lang('msg_save_page_before_image_upload', 'ucfirst') . '</i></b></li>' . "\n" . '</ul>'; return $rendered; }
} $intitial_specimen_ids = explode(',', $_REQUEST['initial_specimen_ids']); foreach ($intitial_specimen_ids as $specimen_id) { if (!in_array($specimen_id, $deleted_specimen_ids)) { $s = Specimen::getOneFromDb(['specimen_id' => $specimen_id], $DB); if ($s->matchesDb) { $s->setFromArray($_REQUEST); $s->updateDb(); } } } $created_specimen_ids = explode(',', $_REQUEST['created_specimen_ids']); foreach ($created_specimen_ids as $created_specimen_id) { // echo "TO BE IMPLEMENTED: handle creation of specimens"; if ($created_specimen_id) { $new_s = Specimen::createNewSpecimenForNotebookPage($notebook_page->notebook_page_id, $DB); $new_s->specimen_id = $created_specimen_id; $new_s->setFromArray($_REQUEST); if ($new_s->name != util_lang('new_specimen_name')) { $new_s->specimen_id = 'NEW'; $new_s->updateDb(); } } } } $action = 'view'; } echo '<script src="' . APP_ROOT_PATH . '/js/notebook_page_general.js"></script>' . "\n"; if ($action == 'view') { if ($USER->canActOnTarget($ACTIONS['edit'], $notebook_page)) { echo '<div id="actions">' . $notebook_page->renderAsButtonEdit() . '</div>' . "\n";
function testRenderFormInteriorForNewSpecimen() { global $USER; $USER = User::getOneFromDb(['username' => TESTINGUSER], $this->DB); $unique_str = 'XYZ789'; $s = Specimen::createNewSpecimenForNotebookPage(0, $this->DB); $s->specimen_id = $unique_str; $canonical = '<h3><input type="text" name="specimen-name_' . $s->specimen_id . '" id="specimen-name_' . $s->specimen_id . '" value="' . htmlentities($s->name) . '"/></h3>' . "\n" . '<ul class="base-info">' . "\n" . ' <li><div class="field-label">' . util_lang('coordinates') . '</div> : <div class="field-value"><input type="text" name="specimen-gps_longitude_' . $s->specimen_id . '" id="specimen-gps_longitude_' . $s->specimen_id . '" value="' . htmlentities($s->gps_longitude) . '"/>, <input type="text" name="specimen-gps_latitude_' . $s->specimen_id . '" id="specimen-gps_latitude_' . $s->specimen_id . '" value="' . htmlentities($s->gps_latitude) . '"/></div></li>' . "\n" . ' <li><div class="field-label">' . util_lang('notes') . '</div> : <div class="field-value"><textarea name="specimen-notes_' . $s->specimen_id . '" id="specimen-notes_' . $s->specimen_id . '" class="specimen-notes" row="4" cols="120">' . htmlentities($s->notes) . '</textarea></div></li>' . "\n" . ' <li><div class="field-label">' . util_lang('catalog_identifier') . '</div> : <div class="field-value"><input type="text" name="specimen-catalog_identifier_' . $s->specimen_id . '" id="specimen-catalog_identifier_' . $s->specimen_id . '" value="' . htmlentities($s->catalog_identifier) . '"/></div></li>' . "\n" . ' <li><b><i>' . util_lang('msg_save_page_before_image_upload', 'ucfirst') . '</i></b></li>' . "\n" . '</ul>'; $rendered = Specimen::renderFormInteriorForNewSpecimen($unique_str, $this->DB); // echo "<pre>\n".htmlentities($canonical)."\n------------------\n".htmlentities($rendered)."\n</pre>"; // echo "<pre>-----------\n"; // $ch_c = substr($canonical,125,1); // $ch_r = substr($rendered,125,1); // echo $ch_c . '('.ord($ch_c).'):' . $ch_r.'('.ord($ch_r).')'; // echo "\n-----------\n"; // echo "</pre>"; $this->assertEqual($canonical, $rendered); $this->assertNoPattern('/IMPLEMENTED/', $rendered); }