Skip to content

Commit

Permalink
Fix bug that made duplicate words and morphemes disapper. Fix typo in…
Browse files Browse the repository at this point in the history
… print stylesheet. Add basic support for HTML5 elements for older browsers.
  • Loading branch information
GPHemsley committed Oct 25, 2011
1 parent d6c562e commit 52217ae
Show file tree
Hide file tree
Showing 5 changed files with 46 additions and 15 deletions.
2 changes: 1 addition & 1 deletion config/config.default.php
Expand Up @@ -44,6 +44,6 @@
* Version information.
*/

define( 'DBOX_VERSION', '0.4-dev' );
define( 'DBOX_VERSION', '0.3.1' );

?>
12 changes: 10 additions & 2 deletions docs/NEWS
Expand Up @@ -25,6 +25,16 @@

>============================[ CURRENT RELEASE ]=============================<

2011-10-24 :: dbox 0.3.1

* Fixed bug that made words and morphemes disappear if there was more than one
of the same in a record.
* Added print stylesheet to the source code. (How embarassing.)
* Ensured at least basic support for HTML5 elements in older browsers.


>=============================[ PAST RELEASES ]==============================<

2011-10-24 :: dbox 0.3

* Added basic glossing support via the morpheme dictionary.
Expand All @@ -45,8 +55,6 @@
* User registration, login, and logout are now tracked properly.


>=============================[ PAST RELEASES ]==============================<

2011-10-17 :: dbox 0.2

* Added basic support for morphemes dictionary.
Expand Down
31 changes: 20 additions & 11 deletions inc/lib/lib.records.php
Expand Up @@ -71,11 +71,17 @@ private function _parse_record( $record )

foreach( explode( ' ', $record ) as $word_id => $word )
{
$gloss[$word] = array();
$gloss[$word_id] = array(
'word' => $word,
'morphemes' => array(),
);

foreach( explode( '-', $word ) as $morpheme_id => $morpheme )
{
$gloss[$word][$morpheme] = array();
$gloss[$word_id]['morphemes'][$morpheme_id] = array(
'morpheme' => $morpheme,
'glosses' => array(),
);

$sql = "SELECT d.*
FROM dictionary d
Expand All @@ -90,7 +96,7 @@ private function _parse_record( $record )

while( $row = $Database->fetch_assoc( $result ) )
{
$gloss[$word][$morpheme][] = $row['gloss'];
$gloss[$word_id]['morphemes'][$morpheme_id]['glosses'][] = $row['gloss'];
}

$Database->free_result( $result );
Expand All @@ -113,35 +119,38 @@ private function _generate_gloss_table( $record, $grammaticality = GR_VAL_GOOD )
$word_boundary = "\t\t" . '<td class="boundary-word">&nbsp;</td>' . "\n";
$morpheme_boundary = "\t\t" . '<td class="boundary-morpheme">-</td>' . "\n";

foreach( $gloss as $word => $morphemes )
foreach( $gloss as $word_id => $word_data )
{
foreach( $morphemes as $morpheme => $morpheme_gloss )
foreach( $word_data['morphemes'] as $morpheme_id => $morpheme_data )
{
$morpheme = $morpheme_data['morpheme'];
$morpheme_gloss = $morpheme_data['glosses'];

$transcription_class = '';

if( count( $morpheme_gloss ) < 1 )
{
// No gloss
$gloss_cells[$word][] = "\t\t" . '<td class="unglossed"><a href="' . ROOT . 'dictionary.php?mode=add&amp;morpheme=' . $morpheme . '">***</a></td>' . "\n";
$gloss_cells[$word_id][] = "\t\t" . '<td class="unglossed"><a href="' . ROOT . 'dictionary.php?mode=add&amp;morpheme=' . $morpheme . '">***</a></td>' . "\n";
$transcription_class = ' class="unglossed"';
}
elseif( count( $morpheme_gloss ) > 1 )
{
// Multiple glosses
$gloss_cells[$word][] = "\t\t" . '<td class="multiple">' . htmlentities( implode( '/', $morpheme_gloss ), ENT_QUOTES, 'UTF-8' ) . '</td>' . "\n";
$gloss_cells[$word_id][] = "\t\t" . '<td class="multiple">' . htmlentities( implode( '/', $morpheme_gloss ), ENT_QUOTES, 'UTF-8' ) . '</td>' . "\n";
$transcription_class = ' class="multiple"';
}
else
{
// Just one gloss
$gloss_cells[$word][] = "\t\t" . '<td>' . htmlentities( $morpheme_gloss[0], ENT_QUOTES, 'UTF-8' ) . '</td>' . "\n";
$gloss_cells[$word_id][] = "\t\t" . '<td>' . htmlentities( $morpheme_gloss[0], ENT_QUOTES, 'UTF-8' ) . '</td>' . "\n";
}

$transcription_cells[$word][] = "\t\t" . '<td' . $transcription_class . '><a href="' . ROOT . 'records.php?mode=view&amp;morpheme=' . $morpheme . '">' . htmlentities( $morpheme, ENT_QUOTES, 'UTF-8' ) . '</a></td>' . "\n";
$transcription_cells[$word_id][] = "\t\t" . '<td' . $transcription_class . '><a href="' . ROOT . 'records.php?mode=view&amp;morpheme=' . $morpheme . '">' . htmlentities( $morpheme, ENT_QUOTES, 'UTF-8' ) . '</a></td>' . "\n";
}

$transcription_row[] = implode( $morpheme_boundary, $transcription_cells[$word] );
$gloss_row[] = implode( $morpheme_boundary, $gloss_cells[$word] );
$transcription_row[] = implode( $morpheme_boundary, $transcription_cells[$word_id] );
$gloss_row[] = implode( $morpheme_boundary, $gloss_cells[$word_id] );
}

$transcription_row = implode( $word_boundary, $transcription_row );
Expand Down
9 changes: 8 additions & 1 deletion style/print.css
Expand Up @@ -7,8 +7,15 @@
color: black;
}

/**
* Ensure at least basic support for HTML5 elements
*/
header, hgroup, nav, section, article, aside, dialog, footer {
display: block;
}

body {
font-family: Paltino, Georgia, serif;
font-family: Palatino, Georgia, serif;
font-size: 12pt;
}

Expand Down
7 changes: 7 additions & 0 deletions style/screen.css
Expand Up @@ -8,6 +8,13 @@
* @license docs/LICENSE BSD License
*/

/**
* Ensure at least basic support for HTML5 elements
*/
header, hgroup, nav, section, article, aside, dialog, footer {
display: block;
}

/**
* Generic styling
*/
Expand Down

0 comments on commit 52217ae

Please sign in to comment.