File:  [LON-CAPA] / doc / loncapafiles / mimetex_version_check.piml
Revision 1.2: download - view: text, annotated - select for diffs
Sat Dec 27 01:21:48 2008 UTC (13 years, 6 months ago) by raeburn
Branches: MAIN
CVS tags: version_2_9_X, version_2_9_99_0, version_2_9_1, version_2_9_0, version_2_8_X, version_2_8_99_1, version_2_8_99_0, version_2_8_2, version_2_8_1, version_2_8_0, version_2_7_99_1, version_2_7_99_0, version_2_12_X, version_2_11_X, version_2_11_4_uiuc, version_2_11_4_msu, version_2_11_4, version_2_11_3_uiuc, version_2_11_3_msu, version_2_11_3, version_2_11_2_uiuc, version_2_11_2_msu, version_2_11_2_educog, version_2_11_2, version_2_11_1, version_2_11_0_RC3, version_2_11_0_RC2, version_2_11_0_RC1, version_2_11_0, version_2_10_X, version_2_10_1, version_2_10_0_RC2, version_2_10_0_RC1, version_2_10_0, loncapaMITrelate_1, language_hyphenation_merge, language_hyphenation, bz6209-base, bz6209, HEAD, GCI_3, GCI_2, GCI_1, BZ4492-merge, BZ4492-feature_horizontal_radioresponse, BZ4492-feature_Support_horizontal_radioresponse, BZ4492-Support_horizontal_radioresponse
- Typo - unwanted `
- Code to remove gif files from mimetexcache moved to sub: &clear_mimetex_cache().
- print warning if VERSION file could not be found in cgi/mimeTeX.

<!DOCTYPE piml PUBLIC "-//TUX/DTD piml 1.0 Final//EN" 
	"http://lpml.sourceforge.net/DTD/piml.dtd">
<!-- mimetex_version_check.piml -->
<!-- Stuart Raeburn -->

<!-- $Id: mimetex_version_check.piml,v 1.2 2008/12/27 01:21:48 raeburn Exp $ -->

<!--

This file is part of the LearningOnline Network with CAPA (LON-CAPA).

LON-CAPA is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

LON-CAPA is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with LON-CAPA; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

/home/httpd/html/adm/gpl.txt

http://www.lon-capa.org/

-->

<piml>
<files>
<file>
<target dist="default">/</target>
<perlscript mode="fg">
    my $currversionfile = '/home/httpd/lonTabs/mimetex-version';
    my $newversionfile = '../cgi/mimeTeX/VERSION';
    my $fh;
    if (-e $newversionfile) {
        if (open($fh, "&lt;$newversionfile")) {
            my $newversion = &lt;$fh&gt;;
            close($fh);
            chomp($newversion);
            if ($newversion=~ /^\d+\.\d+$/) { 
                if (-e $currversionfile) {
                    if (open($fh, "&lt;$currversionfile")) {
                        my $currversion = &lt;$fh&gt;;
                        close($fh);
                        chomp($version);
                        if ($currversion=~ /^\d+\.\d+$/) {
                            if ($currversion ne $newversion) {
                                &clear_mimetex_cache(); 
                                if (open($fh, "&gt;$currversionfile")) {
                                    print $fh "$newversion";
                                    close($fh);
                                    print "mimetex-version file in /home/httpd/lonTabs set to version: $newversion.\n";
                                }
                            }
                        }
                    }
                } else {
                    &clear_mimetex_cache();
                    if (open($fh, "&gt;$currversionfile")) {
                        print $fh "$newversion";
                        close($fh);
                        print "mimetex-version file in /home/httpd/lonTabs set to version: $newversion.\n";
                    }
                }
            }
        }
    } else {
        print "Couldn't find the mimetex version file: $newversionfile\n";
    }

    sub clear_mimetex_cache {
        my $mimetexcache = '/home/httpd/cgi-bin/mimetexcache';
        if (opendir(my $dir,$mimetexcache)) {
            my @gifs = grep(/^[^\/]+\.gif$/,readdir($dir));
            if (@gifs &gt; 0) {
                my $counter = 0;
                foreach my $gif (@gifs) {
                    unlink("$mimetexcache/$gif");
                    $counter ++;
                }
                if ($counter) {
                    print "$counter .gif file(s) cached by previous mimeTeX version have been removed from the mimetexcache directory\n";
                }
            }
            closedir($dir);
        } else {
            print "An error occurred opening the directory: $mimetexcache\n";
        }
    }
</perlscript>
</file>
</files>
</piml>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>