diff options
| author | Randy Morgan (@morgan_randy) <[email protected]> | 2013-01-07 16:29:05 -0800 |
|---|---|---|
| committer | Randy Morgan (@morgan_randy) <[email protected]> | 2013-01-07 16:29:05 -0800 |
| commit | dc2974806e73ec7a2765000c756a4875680c6b4a (patch) | |
| tree | 0568c07421704a3452a950748fb0ffd19cc62486 /lib | |
| parent | f7eeb07abfa1c58552847b2b38787f44cd3e2d24 (diff) | |
| parent | 2feb1ba5ae0d64012cff128c87631a32fc18de1a (diff) | |
| download | caxlsx-dc2974806e73ec7a2765000c756a4875680c6b4a.tar.gz caxlsx-dc2974806e73ec7a2765000c756a4875680c6b4a.zip | |
Merge pull request #155 from nilbus/name-validation
Fixes related to validating worksheet name uniqueness
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/axlsx/workbook/worksheet/worksheet.rb | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/axlsx/workbook/worksheet/worksheet.rb b/lib/axlsx/workbook/worksheet/worksheet.rb index 26385573..5f650263 100644 --- a/lib/axlsx/workbook/worksheet/worksheet.rb +++ b/lib/axlsx/workbook/worksheet/worksheet.rb @@ -23,11 +23,11 @@ module Axlsx # @option options [Boolean] show_gridlines indicates if gridlines should be shown for this sheet. def initialize(wb, options={}) self.workbook = wb - @workbook.worksheets << self @sheet_protection = nil initialize_page_options(options) parse_options options + @workbook.worksheets << self end # Initalizes page margin, setup and print options @@ -637,14 +637,14 @@ module Axlsx end sheet_view.show_outline_symbols = true end - end + def validate_sheet_name(name) DataTypeValidator.validate "Worksheet.name", String, name raise ArgumentError, (ERR_SHEET_NAME_TOO_LONG % name) if name.size > 31 raise ArgumentError, (ERR_SHEET_NAME_CHARACTER_FORBIDDEN % name) if '[]*/\?:'.chars.any? { |char| name.include? char } name = Axlsx::coder.encode(name) - sheet_names = @workbook.worksheets.map { |s| s.name } + sheet_names = @workbook.worksheets.reject { |s| s == self }.map { |s| s.name } raise ArgumentError, (ERR_DUPLICATE_SHEET_NAME % name) if sheet_names.include?(name) end |
