function handle(&$params) { $app =& Dataface_Application::getInstance(); if (!isset($_POST['--confirm_invalidate'])) { return PEAR::raiseError("Cannot invalidate translations with a GET request. Please provide the POST parameter '--confirm_invalidate'"); } $record =& $app->getRecord(); if (!$record) { return PEAR::raiseError("Attempt to invalidate translations on null record. No record could be found to match the query parameters."); } import('Dataface/TranslationTool.php'); $tt = new Dataface_TranslationTool(); $res = $tt->markNewCanonicalVersion($record, $app->_conf['default_language']); if (PEAR::isError($res)) { return $res; } $query =& $app->getQuery(); if (isset($query['--redirect'])) { header('Location: ' . $query['--redirect'] . '&--msg=' . urlencode("Translations successfully invalidated.")); exit; } else { header('Location: ' . $record->getURL('-action=edit') . '&--msg=' . urlencode('Translations successfully invalidated.')); exit; } }
function test_newCanonicalVersion() { $record = df_get_record('Profiles', array('id' => 10)); $tt = new Dataface_TranslationTool(); $this->assertEquals('2.00', $tt->markNewCanonicalVersion($record, 'en')); $this->assertEquals('3.00', $tt->markNewCanonicalVersion($record, 'en')); $this->assertEquals('2.00', $tt->markNewCanonicalVersion($record, 'fr')); }