]> git.koha-community.org Git - koha.git/log
koha.git
18 years agofixing links from acqui.simple to cataloguing
rangi [Thu, 9 Feb 2006 03:26:03 +0000 (03:26 +0000)]
fixing links from acqui.simple to cataloguing

18 years agoChanging to reflect the fact acqui.simple is now cataloguing
rangi [Thu, 9 Feb 2006 03:20:38 +0000 (03:20 +0000)]
Changing to reflect the fact acqui.simple is now cataloguing

18 years agoFixing broken code to show list of branches
rangi [Thu, 9 Feb 2006 03:12:23 +0000 (03:12 +0000)]
Fixing broken code to show list of branches

18 years agoHmm there seem to be quite a few subroutines twice in this module....
rangi [Thu, 9 Feb 2006 01:56:20 +0000 (01:56 +0000)]
Hmm there seem to be quite a few subroutines twice in this module....

Paul could you take a look and remove the ones that shouldnt be there please

18 years agoCleaning up some unessecary my statements
rangi [Thu, 9 Feb 2006 01:52:14 +0000 (01:52 +0000)]
Cleaning up some unessecary my statements

18 years agoCommenting out a line that was preventing the script executing
rangi [Thu, 9 Feb 2006 01:26:16 +0000 (01:26 +0000)]
Commenting out a line that was preventing the script executing

18 years agoupdating DB :
tipaul [Wed, 25 Jan 2006 15:16:06 +0000 (15:16 +0000)]
updating DB :
* removing useless tables
* adding useful indexes
* altering some columns definitions
* The goal being to have updater working fine for foreign keys.

For me it's done, let me know if it works for you. You can see an updated schema of the DB (with constraints) on the wiki

18 years agoDB improvements : adding foreign keys on some tables. partial stuff done.
tipaul [Tue, 24 Jan 2006 17:57:17 +0000 (17:57 +0000)]
DB improvements : adding foreign keys on some tables. partial stuff done.

18 years agojust adding menus to the top
tipaul [Fri, 20 Jan 2006 16:12:49 +0000 (16:12 +0000)]
just adding menus to the top

18 years agoupdating prog templates for acqui
tipaul [Fri, 20 Jan 2006 16:04:42 +0000 (16:04 +0000)]
updating prog templates for acqui

18 years agomoving serials scripts to serials directory
tipaul [Thu, 19 Jan 2006 12:50:07 +0000 (12:50 +0000)]
moving serials scripts to serials directory

18 years agomoving cataloguing scripts to a cataloguing directory (more logic than acqui.simple...
tipaul [Thu, 19 Jan 2006 12:48:00 +0000 (12:48 +0000)]
moving cataloguing scripts to a cataloguing directory (more logic than acqui.simple !!!) & updating prog templates

18 years agotemplating serials & moving them to a serials directory, more self-explanatory (bull...
tipaul [Thu, 19 Jan 2006 12:46:58 +0000 (12:46 +0000)]
templating serials & moving them to a serials directory, more self-explanatory (bull being french)

18 years agoprog templates : completed, fixed & xhtml valid
tipaul [Wed, 18 Jan 2006 17:23:32 +0000 (17:23 +0000)]
prog templates : completed, fixed & xhtml valid

18 years agoprog templates : completed, fixed & xhtml valid
tipaul [Wed, 18 Jan 2006 15:38:17 +0000 (15:38 +0000)]
prog templates : completed, fixed & xhtml valid

18 years agobugfixes xhtml & prog templates
tipaul [Wed, 18 Jan 2006 14:52:07 +0000 (14:52 +0000)]
bugfixes xhtml & prog templates

18 years agoremoving unused scripts
tipaul [Tue, 17 Jan 2006 16:58:36 +0000 (16:58 +0000)]
removing unused scripts

18 years agomoving stats.pl to reports directory
tipaul [Tue, 17 Jan 2006 16:58:07 +0000 (16:58 +0000)]
moving stats.pl to reports directory

18 years agoremoving unused script
tipaul [Tue, 17 Jan 2006 16:54:54 +0000 (16:54 +0000)]
removing unused script

18 years agomoving reserves scripts to reserve directory
tipaul [Tue, 17 Jan 2006 16:51:05 +0000 (16:51 +0000)]
moving reserves scripts to reserve directory

18 years agomoving readingrec to members directory
tipaul [Tue, 17 Jan 2006 16:50:05 +0000 (16:50 +0000)]
moving readingrec to members directory

18 years agomoving moredetail to catalogue directory
tipaul [Tue, 17 Jan 2006 16:49:23 +0000 (16:49 +0000)]
moving moredetail to catalogue directory

18 years agomoving overdue report to reports directory
tipaul [Tue, 17 Jan 2006 16:48:35 +0000 (16:48 +0000)]
moving overdue report to reports directory

18 years agomoving reserves to a reserve directory
tipaul [Tue, 17 Jan 2006 16:46:25 +0000 (16:46 +0000)]
moving reserves to a reserve directory

18 years agomoving report home to reports directory
tipaul [Tue, 17 Jan 2006 16:43:39 +0000 (16:43 +0000)]
moving report home to reports directory

18 years agomoving invoices scripts to members directory
tipaul [Tue, 17 Jan 2006 16:42:12 +0000 (16:42 +0000)]
moving invoices scripts to members directory

18 years agomoving acqui.simple directory to cataloguing, as acqui.simple contains cataloguing...
tipaul [Tue, 17 Jan 2006 16:40:54 +0000 (16:40 +0000)]
moving acqui.simple directory to cataloguing, as acqui.simple contains cataloguing scripts...

18 years agoremoving unused script
tipaul [Tue, 17 Jan 2006 16:36:41 +0000 (16:36 +0000)]
removing unused script

18 years agoremoving website management, that is now useless
tipaul [Tue, 17 Jan 2006 16:34:22 +0000 (16:34 +0000)]
removing website management, that is now useless

18 years agomoving detailprint to catalogue directory
tipaul [Tue, 17 Jan 2006 16:33:36 +0000 (16:33 +0000)]
moving detailprint to catalogue directory

18 years agoRemoving useless scripts : the MARC=OFF scripts are in acqui.simple for instance...
tipaul [Tue, 17 Jan 2006 16:32:41 +0000 (16:32 +0000)]
Removing useless scripts : the MARC=OFF scripts are in acqui.simple for instance. Not sure of this removal, reintroduce them if needed...

18 years agoremoving unused script
tipaul [Tue, 17 Jan 2006 16:30:26 +0000 (16:30 +0000)]
removing unused script

18 years agoremoving catalogue-home, it's useless
tipaul [Tue, 17 Jan 2006 16:29:20 +0000 (16:29 +0000)]
removing catalogue-home, it's useless

18 years agomoving bull-home to bull directory
tipaul [Tue, 17 Jan 2006 16:23:49 +0000 (16:23 +0000)]
moving bull-home to bull directory

18 years agomoving boraccount.pl to members directory
tipaul [Tue, 17 Jan 2006 16:23:05 +0000 (16:23 +0000)]
moving boraccount.pl to members directory

18 years agoremoving unused script
tipaul [Tue, 17 Jan 2006 16:21:49 +0000 (16:21 +0000)]
removing unused script

18 years agomoving admin-home.pl to admin directory
tipaul [Tue, 17 Jan 2006 16:19:37 +0000 (16:19 +0000)]
moving admin-home.pl to admin directory

18 years agomoving catalogue views to catalogue directory
tipaul [Tue, 17 Jan 2006 16:16:16 +0000 (16:16 +0000)]
moving catalogue views to catalogue directory

18 years agoremoving unused script
tipaul [Tue, 17 Jan 2006 16:15:09 +0000 (16:15 +0000)]
removing unused script

18 years agoremoving useless script
tipaul [Tue, 17 Jan 2006 16:11:55 +0000 (16:11 +0000)]
removing useless script

18 years agoremoving unused package
tipaul [Tue, 17 Jan 2006 16:09:50 +0000 (16:09 +0000)]
removing unused package

18 years agoremoving useless package & script
tipaul [Tue, 17 Jan 2006 16:08:25 +0000 (16:08 +0000)]
removing useless package & script

18 years agoremoving useless package
tipaul [Tue, 17 Jan 2006 16:06:54 +0000 (16:06 +0000)]
removing useless package

18 years agoremoving useless sub
tipaul [Tue, 17 Jan 2006 16:06:43 +0000 (16:06 +0000)]
removing useless sub

18 years agonew version of rebuild_zebra. Should work with Perl-ZOOM, but DOES NOT WORK for me.
tipaul [Tue, 10 Jan 2006 17:03:32 +0000 (17:03 +0000)]
new version of rebuild_zebra. Should work with Perl-ZOOM, but DOES NOT WORK for me.

I get  :
ZOOM error 10002 "Encoding failed" from diag-set 'ZOOM'

help expected from indexdata...

18 years agosome modifs in zebra unimarc config files
tipaul [Tue, 10 Jan 2006 17:01:55 +0000 (17:01 +0000)]
some modifs in zebra unimarc config files

18 years agoadding a XMLgetbiblio in Biblio.pm (1st draft, to use with zebra)
tipaul [Tue, 10 Jan 2006 17:01:29 +0000 (17:01 +0000)]
adding a XMLgetbiblio in Biblio.pm (1st draft, to use with zebra)

18 years agosynch'ing head and rel_2_2 (from 2.2.5, including npl templates)
tipaul [Fri, 6 Jan 2006 16:39:37 +0000 (16:39 +0000)]
synch'ing head and rel_2_2 (from 2.2.5, including npl templates)
Seems not to break too many things, but i'm probably wrong here.
at least, new features/bugfixes from 2.2.5 are here (tested on some features on my head local copy)

- removing useless directories (koha-html and koha-plucene)

18 years agoutf8 is a : go for beta test in HEAD.
tipaul [Wed, 4 Jan 2006 15:54:55 +0000 (15:54 +0000)]
utf8 is a : go for beta test in HEAD.
some explanations :
- updater/updatedatabase => will transform all tables in innoDB (not related to utf8, just to warn you) AND collate them in utf8 / utf8_general_ci. The SQL command is : ALTER TABLE tablename DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci.
- *-top.inc will show the pages in utf8
- THE HARD THING : for me, mysql-client and mysql-server were set up to communicate in iso8859-1, whatever the mysql collation ! Thus, pages were improperly shown, as datas were transmitted in iso8859-1 format ! After a full day of investigation, someone on usenet pointed "set NAMES 'utf8'" to explain that I wanted utf8. I could put this in my.cnf, but if I do that, ALL databases will "speak" in utf8, that's not what we want. Thus, I added a line in Context.pm : everytime a DB handle is opened, the communication is set to utf8.
- using marcxml field and no more the iso2709 raw marc biblioitems.marc field.

18 years agoReverse array filled with elements from repeated subfields
thd [Mon, 12 Dec 2005 14:25:51 +0000 (14:25 +0000)]
Reverse array filled with elements from repeated subfields
to avoid last to first concatenation of elements in Koha DB.-

18 years agoFixed wrong path for tab file.
kados [Sun, 11 Dec 2005 04:09:56 +0000 (04:09 +0000)]
Fixed wrong path for tab file.

18 years agoFixing wrong mapping for biblionumber should be 090$c not 090$9
kados [Sun, 11 Dec 2005 04:09:29 +0000 (04:09 +0000)]
Fixing wrong mapping for biblionumber should be 090$c not 090$9

18 years agoAdding usmarc zebra configuration files.
kados [Sun, 11 Dec 2005 00:57:08 +0000 (00:57 +0000)]
Adding usmarc zebra configuration files.

19 years agocode cleaning : removing useless package (everything needed copied in Accounts2.pm)
tipaul [Thu, 27 Oct 2005 12:10:00 +0000 (12:10 +0000)]
code cleaning : removing useless package (everything needed copied in Accounts2.pm)

19 years agonew features for serial module :
tipaul [Thu, 27 Oct 2005 12:08:44 +0000 (12:08 +0000)]
new features for serial module :
- the last 5 issues are now shown, and their status can be changed (but not reverted to "waited", as there can be only one "waited")
- the library can create a "distribution list". this paper contains a list of borrowers (selected from the borrower list, or manually entered), and print it for a given issue. once printed, the sheet can be put on the issue and distributed to every reader on the list (one by one).

19 years agoroad to normalization : changing API = removing getbranchname, replaced by getbranchd...
tipaul [Thu, 27 Oct 2005 12:05:58 +0000 (12:05 +0000)]
road to normalization : changing API = removing getbranchname, replaced by getbranchdetail (should be getbranch, but this sub already exists and I don't understand what it does...)

19 years agobig commit, still breaking things...
tipaul [Wed, 26 Oct 2005 09:11:02 +0000 (09:11 +0000)]
big commit, still breaking things...

* synch with rel_2_2. Probably the last non manual synch, as rel_2_2 should not be modified deeply.
* code cleaning (cleaning warnings from perl -w) continued

19 years agocode cleaning : removing useless package (everything needed copied in Accounts2.pm)
tipaul [Wed, 26 Oct 2005 08:29:28 +0000 (08:29 +0000)]
code cleaning : removing useless package (everything needed copied in Accounts2.pm)

19 years agoNeglected to add this file previously.
oleonard [Wed, 12 Oct 2005 15:04:45 +0000 (15:04 +0000)]
Neglected to add this file previously.

19 years agoFixed bug #1013. Works for me, if someone can check.
doxulting [Wed, 5 Oct 2005 16:19:21 +0000 (16:19 +0000)]
Fixed bug #1013. Works for me, if someone can check.

19 years agoRemoved extra html tags which were creating mistakes in display
doxulting [Tue, 4 Oct 2005 14:41:48 +0000 (14:41 +0000)]
Removed extra html tags which were creating mistakes in display

19 years agoChanger submit type. It was preventing setting the banchcode. It is correct in englis...
doxulting [Mon, 3 Oct 2005 16:21:10 +0000 (16:21 +0000)]
Changer submit type. It was preventing setting the banchcode. It is correct in english, hope my change will be reported when translation will be done.

19 years agoPreviously there was no check to make sure that an issn number
joshferraro [Fri, 30 Sep 2005 18:58:25 +0000 (18:58 +0000)]
Previously there was no check to make sure that an issn number
actually existed; so if there was no isbn, and the issn was blank,
the item would be assigned a random biblionumber and the breeding farm
would report that the item already exists in the catalog (even though
it didn't). This fix adds a check to determine whether the imported
record has an issn before assigning a matching biblionumber.

19 years agoMarks the item borrowed now on the items table
rangi [Thu, 22 Sep 2005 23:30:37 +0000 (23:30 +0000)]
Marks the item borrowed now on the items table

19 years agosee mail on koha-devel : code cleaning on Search.pm + normalizing API + use of biblio...
tipaul [Thu, 22 Sep 2005 15:31:05 +0000 (15:31 +0000)]
see mail on koha-devel : code cleaning on Search.pm + normalizing API + use of biblionumber everywhere (instead of bn, biblio, ...)

19 years agosee mail on koha-devel : code cleaning on Search.pm + normalizing API + use of biblio...
tipaul [Thu, 22 Sep 2005 10:01:45 +0000 (10:01 +0000)]
see mail on koha-devel : code cleaning on Search.pm + normalizing API + use of biblionumber everywhere (instead of bn, biblio, ...)

19 years agoremoving useless script
tipaul [Tue, 13 Sep 2005 08:32:50 +0000 (08:32 +0000)]
removing useless script

19 years agoSeveral fixes to allow for creation of valid Code 128 barcodes.
joshferraro [Mon, 12 Sep 2005 01:52:41 +0000 (01:52 +0000)]
Several fixes to allow for creation of valid Code 128 barcodes.
A new function allows for printing of call number rather than title/author
(default behavior). These barcodes should work fine now with any scanner
capable of Code 128 (with a checksum).

19 years agoAdd support for itemtypes. Still need to hardcode 'reservable'
joshferraro [Sun, 11 Sep 2005 23:55:19 +0000 (23:55 +0000)]
Add support for itemtypes. Still need to hardcode 'reservable'
itemtypes to script.

19 years agoporting 22 fixes to head
tipaul [Fri, 9 Sep 2005 10:04:55 +0000 (10:04 +0000)]
porting 22 fixes to head

19 years agoNow takes date range, and credits are displayed as 2dp.
szrj1m [Wed, 7 Sep 2005 01:22:17 +0000 (01:22 +0000)]
Now takes date range, and credits are displayed as 2dp.

19 years agomake status contingent upon all status fields in Koha including itemtype
joshferraro [Tue, 6 Sep 2005 12:28:08 +0000 (12:28 +0000)]
make status contingent upon all status fields in Koha including itemtype

19 years agoFixing typo channing ' to " so the title is stored in accountlines not $title
rangi [Tue, 6 Sep 2005 05:34:52 +0000 (05:34 +0000)]
Fixing typo channing ' to " so the title is stored in accountlines not $title

19 years agoadding Content-Disposition to header to allow for browsers to recognize
joshferraro [Mon, 5 Sep 2005 22:25:11 +0000 (22:25 +0000)]
adding Content-Disposition to header to allow for browsers to recognize
it's a PDF by default, etc.

19 years agomoving NewBorrowerNumber sub to Members package
tipaul [Mon, 5 Sep 2005 19:27:21 +0000 (19:27 +0000)]
moving NewBorrowerNumber sub to Members package

19 years agomoving findguarantor sub to Members package
tipaul [Mon, 5 Sep 2005 19:26:08 +0000 (19:26 +0000)]
moving findguarantor sub to Members package

19 years agoremoving findguarantee, that is also in Members.pm
tipaul [Mon, 5 Sep 2005 19:24:38 +0000 (19:24 +0000)]
removing findguarantee, that is also in Members.pm

19 years agoLooks to me like this isn't used anymore
oleonard [Sat, 3 Sep 2005 18:39:04 +0000 (18:39 +0000)]
Looks to me like this isn't used anymore

19 years agoPutting this template in with reserves where it belongs. Adding alternating row...
oleonard [Sat, 3 Sep 2005 18:35:37 +0000 (18:35 +0000)]
Putting this template in with reserves where it belongs.  Adding alternating row colors, formatting links properly to go with updates to the script.

19 years agoMoving HTML out of the script, passing variables instead to the template. Adding...
oleonard [Sat, 3 Sep 2005 18:33:15 +0000 (18:33 +0000)]
Moving HTML out of the script, passing variables instead to the template.  Adding toggle variable for alternating row colors

19 years agoreservereport.tmpl has been moved to /reports
oleonard [Sat, 3 Sep 2005 18:31:03 +0000 (18:31 +0000)]
reservereport.tmpl has been moved to /reports

19 years agoPutting this template in with reserves where it belongs. Also making a few changes...
oleonard [Sat, 3 Sep 2005 18:30:20 +0000 (18:30 +0000)]
Putting this template in with reserves where it belongs.  Also making a few changes: bringing it more in line with other CSS templates, adding alternating row colors, formatting links properly to go with updates to the script.

19 years agoModified module to no longer use Date::Manip, not as powerful, but a lot faster.
rangi [Sat, 3 Sep 2005 00:54:23 +0000 (00:54 +0000)]
Modified module to no longer use Date::Manip, not as powerful, but a lot faster.

19 years agoThis is currently a copy of C4::Date
rangi [Sat, 3 Sep 2005 00:35:47 +0000 (00:35 +0000)]
This is currently a copy of C4::Date

But C4::Date uses Date::Manip, which in the authors own words

"If you look in CPAN, you'll find that there are a number of Date and Time packages.  Is Date::Manip the one you should be using?  In my
opinion, the answer is no most of the time."

He goes on to say, that because Date::Manip is powerful and is written fully in perl its also slow.
Now Circulation needs to be as fast as possible. And C4::Date isnt actually doing anything particularly tricky,
So im working on C4::Circulation::Date to be a replacement, in an attempt to win some speed

19 years agoLink to reviews displaying if there are any available
rangi [Sat, 3 Sep 2005 00:28:01 +0000 (00:28 +0000)]
Link to reviews displaying if there are any available

19 years agoMore ugly html, this template is to display reviews, once a user has click on the...
rangi [Sat, 3 Sep 2005 00:25:08 +0000 (00:25 +0000)]
More ugly html, this template is to display reviews, once a user has click on the display review link on the opac-detail.pl page

19 years agoTemplate for editing/adding a review.
rangi [Sat, 3 Sep 2005 00:22:17 +0000 (00:22 +0000)]
Template for editing/adding a review.
This is ugly chris html .. im hoping Owen or someone can fix it up

19 years agoChange to the template to display a link to add a review
rangi [Sat, 3 Sep 2005 00:18:29 +0000 (00:18 +0000)]
Change to the template to display a link to add a review

19 years agoNow fetches the number of reviews, and passes it through to the template to be displayed
rangi [Sat, 3 Sep 2005 00:10:36 +0000 (00:10 +0000)]
Now fetches the number of reviews, and passes it through to the template to be displayed

19 years agoScript to display reviews, given a biblionumber
rangi [Sat, 3 Sep 2005 00:09:34 +0000 (00:09 +0000)]
Script to display reviews, given a biblionumber

19 years agoScript to add or edit a review
rangi [Sat, 3 Sep 2005 00:07:55 +0000 (00:07 +0000)]
Script to add or edit a review

19 years agoA work in progress still.
rangi [Sat, 3 Sep 2005 00:05:40 +0000 (00:05 +0000)]
A work in progress still.
This module is for dealing with user submitted reviews of items
Currently it allows (with some scripts) a user to review any item on their reading record.
The review is marked unvetted, and a librarian must vette and approve the review before it can show to the public

The scripts to add/edit a review, and to display them for the opac are done.
The script to display a list of reviews waiting vetting for the librarians has also been done.

19 years ago* road to zebra for MARC=OFF
tipaul [Fri, 2 Sep 2005 14:46:40 +0000 (14:46 +0000)]
* road to zebra for MARC=OFF
* removing Acquisitions/branches.pm call, as it's now in Koha.pm

19 years agonew feature : image for itemtypes.
tipaul [Fri, 2 Sep 2005 14:45:29 +0000 (14:45 +0000)]
new feature : image for itemtypes.

* run updater/updatedatabase to create imageurl field in itemtypes.
* go to Koha >> parameters >> itemtypes >> modify (or add) an itemtype. You will see around 20 nice images to choose between (thanks to owen). If you prefer your own image, you also can type a complete url (http://www.myserver.lib/path/to/my/image.gif)
* go to OPAC, and search something. In the result list, you now have the picture instead of the text itemtype.

19 years agocontinuing the work to move to zebra. Begin of work for MARC=OFF support.
tipaul [Fri, 2 Sep 2005 14:34:14 +0000 (14:34 +0000)]
continuing the work to move to zebra. Begin of work for MARC=OFF support.
IMPORTANT NOTE : the MARCkoha2marc sub API has been modified. Instead of biblionumber & biblioitemnumber, it now gets a hash.
The sub is used only in Biblio.pm, so the API change should be harmless (except for me, but i'm aware ;-) )

19 years agoremoving branches sub, that should be in Koha.pm package (generic sub)
tipaul [Fri, 2 Sep 2005 14:30:28 +0000 (14:30 +0000)]
removing branches sub, that should be in Koha.pm package (generic sub)

19 years agonew feature : image for itemtypes.
tipaul [Fri, 2 Sep 2005 14:28:38 +0000 (14:28 +0000)]
new feature : image for itemtypes.

* run updater/updatedatabase to create imageurl field in itemtypes.
* go to Koha >> parameters >> itemtypes >> modify (or add) an itemtype. You will see around 20 nice images to choose between (thanks to owen). If you prefer your own image, you also can type a complete url (http://www.myserver.lib/path/to/my/image.gif)
* go to OPAC, and search something. In the result list, you now have the picture instead of the text itemtype.

19 years agonew feature : image for itemtypes.
tipaul [Fri, 2 Sep 2005 14:18:38 +0000 (14:18 +0000)]
new feature : image for itemtypes.

* run updater/updatedatabase to create imageurl field in itemtypes.
* go to Koha >> parameters >> itemtypes >> modify (or add) an itemtype. You will see around 20 nice images to choose between (thanks to owen). If you prefer your own image, you also can type a complete url (http://www.myserver.lib/path/to/my/image.gif)
* go to OPAC, and search something. In the result list, you now have the picture instead of the text itemtype.

19 years agoFix for loanlength to make the default length work properly
rangi [Wed, 31 Aug 2005 23:11:19 +0000 (23:11 +0000)]
Fix for loanlength to make the default length work properly

19 years agoFix for bug 585 (Using 'document.forms[0]' notation prevents use of other forms on...
oleonard [Wed, 31 Aug 2005 15:53:53 +0000 (15:53 +0000)]
Fix for bug 585 (Using 'document.forms[0]' notation prevents use of other forms on page) Changing the reference from [0] to ['f'], with 'f' being the form name, seems to work fine. Also quoting some unquoted attributes and fixing some HTML typos