Class: Vcard::Vcard::Name
- Inherits:
-
Object
- Object
- Vcard::Vcard::Name
- Defined in:
- lib/vcard/vcard.rb
Overview
The name from a vCard, including all the components of the N: and FN: fields.
Instance Attribute Summary collapse
-
#additional ⇒ Object
additional names, from N.
-
#family ⇒ Object
family name, from N.
-
#formatted ⇒ Object
readonly
:nodoc:.
-
#fullname ⇒ Object
full name, the FN field.
-
#given ⇒ Object
given name, from N.
-
#prefix ⇒ Object
such as “Ms.” or “Dr.”, from N.
-
#suffix ⇒ Object
such as “BFA”, from N.
Instance Method Summary collapse
-
#encode ⇒ Object
:nodoc:.
-
#encode_fn ⇒ Object
:nodoc:.
-
#initialize(n = "", fn = "") ⇒ Name
constructor
:nodoc:.
Constructor Details
#initialize(n = "", fn = "") ⇒ Name
:nodoc:
384 385 386 387 388 389 390 391 392 393 394 395 396 397 |
# File 'lib/vcard/vcard.rb', line 384 def initialize(n="", fn="") #:nodoc: n = ::Vcard.decode_text_list(n, ";") do |item| item.strip end @family = n[0] || "" @given = n[1] || "" @additional = n[2] || "" @prefix = n[3] || "" @suffix = n[4] || "" # FIXME - make calls to #fullname fail if fn is nil @fullname = (fn || "").strip end |
Instance Attribute Details
#additional ⇒ Object
additional names, from N
362 363 364 |
# File 'lib/vcard/vcard.rb', line 362 def additional @additional end |
#family ⇒ Object
family name, from N
358 359 360 |
# File 'lib/vcard/vcard.rb', line 358 def family @family end |
#formatted ⇒ Object (readonly)
:nodoc:
372 373 374 |
# File 'lib/vcard/vcard.rb', line 372 def formatted @formatted end |
#fullname ⇒ Object
full name, the FN field. FN is a formatted version of the N field, intended to be in a form more aligned with the cultural conventions of the vCard owner than formatted
is.
370 371 372 |
# File 'lib/vcard/vcard.rb', line 370 def fullname @fullname end |
#given ⇒ Object
given name, from N
360 361 362 |
# File 'lib/vcard/vcard.rb', line 360 def given @given end |
#prefix ⇒ Object
such as “Ms.” or “Dr.”, from N
364 365 366 |
# File 'lib/vcard/vcard.rb', line 364 def prefix @prefix end |
#suffix ⇒ Object
such as “BFA”, from N
366 367 368 |
# File 'lib/vcard/vcard.rb', line 366 def suffix @suffix end |
Instance Method Details
#encode ⇒ Object
:nodoc:
399 400 401 |
# File 'lib/vcard/vcard.rb', line 399 def encode #:nodoc: ::Vcard::DirectoryInfo::Field.create("N", ::Vcard.encode_text_list([ @family, @given, @additional, @prefix, @suffix ].map{|n| n.strip}, ";")) end |
#encode_fn ⇒ Object
:nodoc:
403 404 405 406 407 408 409 |
# File 'lib/vcard/vcard.rb', line 403 def encode_fn #:nodoc: fn = @fullname.strip if @fullname.length == 0 fn = formatted end ::Vcard::DirectoryInfo::Field.create("FN", fn) end |