[dev] [commit] r1043 - patches phplib/models templates/admin wwwbase/admin wwwbase/ajax wwwbase/js
automailer at dexonline.ro
automailer at dexonline.ro
Sun Dec 8 03:52:39 EET 2013
Author: radu
Date: Sun Dec 8 03:52:39 2013
New Revision: 1043
Log:
add similar sources checkbox and support for multiple OCR editors
Added:
patches/00105.sql
phplib/models/SimilarSource.php
Modified:
templates/admin/definitionEdit.ihtml
templates/admin/index.ihtml
wwwbase/admin/definitionEdit.php
wwwbase/ajax/reportCounter.php
wwwbase/js/dex.js
Added: patches/00105.sql
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ patches/00105.sql Sun Dec 8 03:52:39 2013 (r1043)
@@ -0,0 +1,12 @@
+alter table Definition add column similarSource tinyint(1) NOT NULL default 0 after sourceId;
+
+CREATE TABLE `SimilarSource` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `sourceId` int(11) NOT NULL,
+ `similarSource` int(11) NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `sourceId` (`sourceId`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf;
+
+insert into SimilarSource(sourceId, similarSource) values (1,2), (2,3), (3,4), (8,18), (19,18), (27,1), (40,27), (21,17);
+
Added: phplib/models/SimilarSource.php
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ phplib/models/SimilarSource.php Sun Dec 8 03:52:39 2013 (r1043)
@@ -0,0 +1,12 @@
+<?php
+
+class SimilarSource extends BaseObject {
+ public static $_table = 'SimilarSource';
+
+ public static function getSimilarSource($sourceId) {
+ $ss = Model::factory('SimilarSource')->select('similarSource')->where('sourceId', $sourceId)->find_one();
+ return $ss ? $ss->similarSource : null;
+ }
+
+}
+?>
Modified: templates/admin/definitionEdit.ihtml
==============================================================================
--- templates/admin/definitionEdit.ihtml Mon Dec 2 14:56:38 2013 (r1042)
+++ templates/admin/definitionEdit.ihtml Sun Dec 8 03:52:39 2013 (r1043)
@@ -92,9 +92,14 @@
{/if}
</td>
</tr>
+ <tr id='similarSourceRow' {if $similarSource->shortName}{else}style="display:none"{/if}>
+ <td>Similarități</td>
+ <td>
+ <input type="checkbox" id="similarSource" name="similarSource" value="1" {if $def->similarSource}checked="checked"{/if}/> Definiție similară cu cea din {$similarSource->shortName}
+ </td>
+ </tr>
<tr>
<td colspan="3" class="buttonRow">
- <!-- input type="submit" name="but_refresh" value="Reafișează"/ -->
<input type="button" name="but_refresh" value="Reafișează" onclick="defRefresh()"/>
<span class="tooltip" title="Tipărește definiția și comentariul cu modificările făcute. Modificările nu sunt încă salvate."> </span>
@@ -142,4 +147,5 @@
<script>
$(definitionEditInit);
+ $(similarSourceHideonChange);
</script>
Modified: templates/admin/index.ihtml
==============================================================================
--- templates/admin/index.ihtml Mon Dec 2 14:56:38 2013 (r1042)
+++ templates/admin/index.ihtml Sun Dec 8 03:52:39 2013 (r1043)
@@ -41,7 +41,9 @@
<span id="span_visualTag"><img src="{$imgRoot}/icons/hourglass.png" alt="hourglass"/></span><br/>
<a href="/admin/definitionEdit.php">Definiții OCR neverificate:</a>
-<span id="span_ocrDefs"><img src="{$imgRoot}/icons/hourglass.png" alt="hourglass"/></span><br/>
+<span id="span_ocrDefs"><img src="{$imgRoot}/icons/hourglass.png" alt="hourglass"/></span>
+(indisponibile: <span id="span_ocrAvailDefs"><img src="{$imgRoot}/icons/hourglass.png" alt="hourglass"/></span>)
+<br/>
{if $sUser->moderator & $smarty.const.PRIV_ADMIN}
Adaugă noi definiții OCR (una pe linie): <a href="/admin/ocrInput.php">click aici</a>.
Modified: wwwbase/admin/definitionEdit.php
==============================================================================
--- wwwbase/admin/definitionEdit.php Mon Dec 2 14:56:38 2013 (r1042)
+++ wwwbase/admin/definitionEdit.php Sun Dec 8 03:52:39 2013 (r1043)
@@ -9,6 +9,7 @@
if($definitionId && !$nextOcrBut) {
$lexemIds = util_getRequestCsv('lexemIds');
$sourceId = util_getRequestIntParameter('source');
+ $similarSource = util_getRequestParameter('similarSource');
$internalRep = util_getRequestParameter('internalRep');
$status = util_getRequestIntParameterWithDefault('status', null);
$commentContents = util_getRequestParameter('commentContents');
@@ -18,6 +19,7 @@
$definitionId = null;
$lexemIds = null;
$sourceId = null;
+ $similarSource = 0;
$internalRep = null;
$status = null;
$commentContents = null;
@@ -31,7 +33,12 @@
if (!$definitionId) {
if ($isOCR) {
- $ocr = Model::factory('OCR')->where('status', 'raw')->order_by_asc('dateModified')->find_one();
+ //find definitions assigned to user
+ $ocr = Model::factory('OCR')->where('status', 'raw')->where('editorId', session_getUserId())->order_by_asc('dateModified')->find_one();
+ // find definitions assigned to noone
+ if (!$ocr || !$ocr->id) {
+ $ocr = Model::factory('OCR')->where('status', 'raw')->where_null('editorId')->order_by_asc('dateModified')->find_one();
+ }
if (!$ocr || !$ocr->id) {
echo("Lista cu definiții OCR este goală.");
return;
@@ -45,6 +52,7 @@
$definition->status = ST_PENDING;
$definition->userId = session_getUserId();
$definition->sourceId = $sourceId;
+ $definition->similarSource = $similarSource;
$definition->internalRep = $def;
$definition->htmlRep = AdminStringUtil::htmlize($def, $sourceId);
$definition->lexicon = AdminStringUtil::extractLexicon($definition);
@@ -64,6 +72,7 @@
if (!($definition = Definition::get_by_id($definitionId))) {
return;
}
+
$comment = Model::factory('Comment')->where('definitionId', $definitionId)->where('status', ST_ACTIVE)->find_one();
$commentUser = $comment ? User::get_by_id($comment->userId) : null;
$oldInternalRep = $definition->internalRep;
@@ -85,6 +94,13 @@
if ($sourceId) {
$definition->sourceId = (int)$sourceId;
}
+if ($similarSource) {
+ $definition->similarSource = 1;
+}
+else {
+ $definition->similarSource = 0;
+}
+
if ($internalRep || $sourceId) {
$definition->lexicon = AdminStringUtil::extractLexicon($definition);
}
@@ -163,13 +179,13 @@
}
log_userLog("Edited definition {$definition->id} ({$definition->lexicon})");
- util_redirect('definitionEdit.php?definitionId=' . $definitionId);
+ //util_redirect('definitionEdit.php?definitionId=' . $definitionId);
}
else if ($nextOcrBut && !$hasErrors) {
//TODO: check if definition has lexems
$definition->save();
log_userLog("Edited OCR definition {$definition->id} ({$definition->lexicon}), ocr ({$ocr->id})");
- util_redirect('definitionEdit.php?definitionId=' . $definitionId . "&ocr=1");
+ //util_redirect('definitionEdit.php?definitionId=' . $definitionId . "&ocr=1");
}
$source = Source::get_by_id($definition->sourceId);
@@ -180,9 +196,16 @@
RecentLink::createOrUpdate(sprintf("Definiție: %s (%s)", $definition->lexicon, $source->shortName));
}
+$similarSourceName = null;
+if ($definition->sourceId) {
+ $similarSourceId = SimilarSource::getSimilarSource($definition->sourceId);
+ $similarSourceObj = Source::get_by_id($similarSourceId);
+}
+
SmartyWrap::assign('isOCR', $isOCR);
SmartyWrap::assign('def', $definition);
SmartyWrap::assign('source', $source);
+SmartyWrap::assign('similarSource', $similarSourceObj);
SmartyWrap::assign('user', User::get_by_id($definition->userId));
SmartyWrap::assign('comment', $comment);
SmartyWrap::assign('commentUser', $commentUser);
Modified: wwwbase/ajax/reportCounter.php
==============================================================================
--- wwwbase/ajax/reportCounter.php Mon Dec 2 14:56:38 2013 (r1042)
+++ wwwbase/ajax/reportCounter.php Sun Dec 8 03:52:39 2013 (r1043)
@@ -23,6 +23,7 @@
break;
case 'visualTag': echo Model::factory('Visual')->where('revised', 0)->count(); break;
case 'ocrDefs': echo Model::factory('OCR')->where('status', 'raw')->count(); break;
+case 'ocrAvailDefs': echo Model::factory('OCR')->where('status', 'raw')->where_not_null('editorId')->where_not_equal('editorId', session_getUserId())->count(); break;
default: echo 'Necunoscut';
}
Modified: wwwbase/js/dex.js
==============================================================================
--- wwwbase/js/dex.js Mon Dec 2 14:56:38 2013 (r1042)
+++ wwwbase/js/dex.js Sun Dec 8 03:52:39 2013 (r1043)
@@ -349,7 +349,7 @@
function startReportCounters() {
reports = ['unassociatedLexems', 'unassociatedDefinitions', 'definitionsWithTypos', 'temporaryDefinitions', 'temporaryLexems', 'lexemsWithComments',
- 'lexemsWithoutAccents', 'definitionsWithAmbiguousAbbrev', 'wotd', 'visualTag', 'ocrDefs'];
+ 'lexemsWithoutAccents', 'definitionsWithAmbiguousAbbrev', 'wotd', 'visualTag', 'ocrDefs', 'ocrAvailDefs'];
for (var i = 0; i < reports.length; i++) {
$.ajax({
url: wwwRoot + 'ajax/reportCounter.php',
@@ -488,3 +488,7 @@
});
});
}
+
+function similarSourceHideonChange() {
+ $('#sourceDropDown').change(function(){$('#similarSourceRow').hide()});
+}
More information about the Dev
mailing list