sfcsfs 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/bin/zanryu +72 -0
- data/lib/sfcsfs.rb +1 -1
- data/sfcsfs.gemspec +3 -1
- metadata +43 -19
    
        data/bin/zanryu
    ADDED
    
    | @@ -0,0 +1,72 @@ | |
| 1 | 
            +
            # encoding:UTF-8
         | 
| 2 | 
            +
            require 'sfcsfs'
         | 
| 3 | 
            +
            require 'pit'
         | 
| 4 | 
            +
            require 'sfc-room'
         | 
| 5 | 
            +
            require 'args_parser'
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            SFS_CONFIG = Pit.get("sfcsfs", :require => {
         | 
| 8 | 
            +
              :account  => "your CNS account",
         | 
| 9 | 
            +
              :password => "your CNS password" })
         | 
| 10 | 
            +
             | 
| 11 | 
            +
             | 
| 12 | 
            +
            args = ArgsParser.parse ARGV do
         | 
| 13 | 
            +
              arg :help,     'Help'                 
         | 
| 14 | 
            +
              arg :lecture,  'Lecture Name'         
         | 
| 15 | 
            +
              arg :phone,    'Phone Number'         
         | 
| 16 | 
            +
              arg :p_phone,  "Parents' Phone Number"
         | 
| 17 | 
            +
              arg :time,     "Time"                 
         | 
| 18 | 
            +
              arg :place,    "Place"                
         | 
| 19 | 
            +
              arg :building, "Building"             
         | 
| 20 | 
            +
              arg :floor,    "Floor"                
         | 
| 21 | 
            +
              arg :room,     "Room"                 
         | 
| 22 | 
            +
              arg :reason,   "Reason"               
         | 
| 23 | 
            +
              arg :save,     "Save options to default"
         | 
| 24 | 
            +
            end
         | 
| 25 | 
            +
             | 
| 26 | 
            +
            if args.has_option? :help
         | 
| 27 | 
            +
              puts args.help
         | 
| 28 | 
            +
            end
         | 
| 29 | 
            +
             | 
| 30 | 
            +
             | 
| 31 | 
            +
            if args[:place]
         | 
| 32 | 
            +
              room = SFCRoom.parse(args[:place])
         | 
| 33 | 
            +
              args[:building] = args[:building] || room.building_number_for_sfs
         | 
| 34 | 
            +
              args[:floor]    = args[:floor]    || room.floor
         | 
| 35 | 
            +
              args[:room]     = args[:room]     || room.room
         | 
| 36 | 
            +
            end
         | 
| 37 | 
            +
             | 
| 38 | 
            +
            if defaults = Pit.get('zanryu')
         | 
| 39 | 
            +
              args[:phone   ] = args[:phone   ] || defaults[:phone   ]
         | 
| 40 | 
            +
              args[:p_phone ] = args[:p_phone ] || defaults[:p_phone ]
         | 
| 41 | 
            +
              args[:time    ] = args[:time    ] || defaults[:time    ]
         | 
| 42 | 
            +
              args[:building] = args[:building] || defaults[:building]
         | 
| 43 | 
            +
              args[:floor   ] = args[:floor   ] || defaults[:floor   ]
         | 
| 44 | 
            +
              args[:room    ] = args[:room    ] || defaults[:room    ]
         | 
| 45 | 
            +
              args[:reason  ] = args[:reason  ] || defaults[:reason  ]
         | 
| 46 | 
            +
            end
         | 
| 47 | 
            +
             | 
| 48 | 
            +
            required = [ :phone, :p_phone, :time, :building, :floor, :room, :reason]
         | 
| 49 | 
            +
            required.each{|e| if !args[e] then puts "#{e} is required";exit 1;end}
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            args[:phone] = "0#{args[:phone]}"     if Fixnum === args[:phone]
         | 
| 52 | 
            +
            args[:p_phone] = "0#{args[:p_phone]}" if Fixnum === args[:p_phone]
         | 
| 53 | 
            +
             | 
| 54 | 
            +
            options = {:phone    => args[:phone   ],
         | 
| 55 | 
            +
                       :p_phone  => args[:p_phone ],
         | 
| 56 | 
            +
                       :time     => args[:time    ],
         | 
| 57 | 
            +
                       :building => args[:building],
         | 
| 58 | 
            +
                       :floor    => args[:floor   ],
         | 
| 59 | 
            +
                       :room     => args[:room    ],
         | 
| 60 | 
            +
                       :reason   => args[:reason  ],}
         | 
| 61 | 
            +
             | 
| 62 | 
            +
            if args.has_option?(:save)
         | 
| 63 | 
            +
              Pit.set('zanryu',{:data => options})
         | 
| 64 | 
            +
            end
         | 
| 65 | 
            +
             | 
| 66 | 
            +
            agent = SFCSFS::Agent.login(SFS_CONFIG[:account],SFS_CONFIG[:password])
         | 
| 67 | 
            +
            agent.my_schedule.each do |lec|
         | 
| 68 | 
            +
              if lec.title.match(/#{args[:lecture]}/)
         | 
| 69 | 
            +
                lec.send_stay_form(options)
         | 
| 70 | 
            +
                break
         | 
| 71 | 
            +
              end
         | 
| 72 | 
            +
            end
         | 
    
        data/lib/sfcsfs.rb
    CHANGED
    
    
    
        data/sfcsfs.gemspec
    CHANGED
    
    | @@ -16,7 +16,9 @@ Gem::Specification.new do |gem| | |
| 16 16 | 
             
              gem.version       = SFCSFS::VERSION
         | 
| 17 17 | 
             
              gem.add_dependency('nokogiri','~> 1.5.5')
         | 
| 18 18 | 
             
              gem.add_dependency('addressable','~> 2.2.8')
         | 
| 19 | 
            +
              gem.add_dependency('pit')
         | 
| 20 | 
            +
              gem.add_dependency('sfc-room')
         | 
| 21 | 
            +
              gem.add_dependency('args_parser')
         | 
| 19 22 | 
             
              gem.add_development_dependency('rspec', '~> 2.10.0')
         | 
| 20 23 | 
             
              gem.add_development_dependency('rake')
         | 
| 21 | 
            -
              gem.add_development_dependency('pit')
         | 
| 22 24 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: sfcsfs
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.1. | 
| 4 | 
            +
              version: 0.1.4
         | 
| 5 5 | 
             
              prerelease: 
         | 
| 6 6 | 
             
            platform: ruby
         | 
| 7 7 | 
             
            authors:
         | 
| @@ -9,11 +9,11 @@ authors: | |
| 9 9 | 
             
            autorequire: 
         | 
| 10 10 | 
             
            bindir: bin
         | 
| 11 11 | 
             
            cert_chain: []
         | 
| 12 | 
            -
            date: 2012-10- | 
| 12 | 
            +
            date: 2012-10-23 00:00:00.000000000 Z
         | 
| 13 13 | 
             
            dependencies:
         | 
| 14 14 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 15 15 | 
             
              name: nokogiri
         | 
| 16 | 
            -
              requirement: & | 
| 16 | 
            +
              requirement: &70327303834260 !ruby/object:Gem::Requirement
         | 
| 17 17 | 
             
                none: false
         | 
| 18 18 | 
             
                requirements:
         | 
| 19 19 | 
             
                - - ~>
         | 
| @@ -21,10 +21,10 @@ dependencies: | |
| 21 21 | 
             
                    version: 1.5.5
         | 
| 22 22 | 
             
              type: :runtime
         | 
| 23 23 | 
             
              prerelease: false
         | 
| 24 | 
            -
              version_requirements: * | 
| 24 | 
            +
              version_requirements: *70327303834260
         | 
| 25 25 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 26 26 | 
             
              name: addressable
         | 
| 27 | 
            -
              requirement: & | 
| 27 | 
            +
              requirement: &70327303833780 !ruby/object:Gem::Requirement
         | 
| 28 28 | 
             
                none: false
         | 
| 29 29 | 
             
                requirements:
         | 
| 30 30 | 
             
                - - ~>
         | 
| @@ -32,32 +32,54 @@ dependencies: | |
| 32 32 | 
             
                    version: 2.2.8
         | 
| 33 33 | 
             
              type: :runtime
         | 
| 34 34 | 
             
              prerelease: false
         | 
| 35 | 
            -
              version_requirements: * | 
| 35 | 
            +
              version_requirements: *70327303833780
         | 
| 36 36 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 37 | 
            -
              name:  | 
| 38 | 
            -
              requirement: & | 
| 37 | 
            +
              name: pit
         | 
| 38 | 
            +
              requirement: &70327303833400 !ruby/object:Gem::Requirement
         | 
| 39 39 | 
             
                none: false
         | 
| 40 40 | 
             
                requirements:
         | 
| 41 | 
            -
                - -  | 
| 41 | 
            +
                - - ! '>='
         | 
| 42 42 | 
             
                  - !ruby/object:Gem::Version
         | 
| 43 | 
            -
                    version:  | 
| 44 | 
            -
              type: : | 
| 43 | 
            +
                    version: '0'
         | 
| 44 | 
            +
              type: :runtime
         | 
| 45 45 | 
             
              prerelease: false
         | 
| 46 | 
            -
              version_requirements: * | 
| 46 | 
            +
              version_requirements: *70327303833400
         | 
| 47 47 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 48 | 
            -
              name:  | 
| 49 | 
            -
              requirement: & | 
| 48 | 
            +
              name: sfc-room
         | 
| 49 | 
            +
              requirement: &70327303832940 !ruby/object:Gem::Requirement
         | 
| 50 | 
            +
                none: false
         | 
| 51 | 
            +
                requirements:
         | 
| 52 | 
            +
                - - ! '>='
         | 
| 53 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 54 | 
            +
                    version: '0'
         | 
| 55 | 
            +
              type: :runtime
         | 
| 56 | 
            +
              prerelease: false
         | 
| 57 | 
            +
              version_requirements: *70327303832940
         | 
| 58 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 59 | 
            +
              name: args_parser
         | 
| 60 | 
            +
              requirement: &70327303832520 !ruby/object:Gem::Requirement
         | 
| 50 61 | 
             
                none: false
         | 
| 51 62 | 
             
                requirements:
         | 
| 52 63 | 
             
                - - ! '>='
         | 
| 53 64 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 65 | 
             
                    version: '0'
         | 
| 66 | 
            +
              type: :runtime
         | 
| 67 | 
            +
              prerelease: false
         | 
| 68 | 
            +
              version_requirements: *70327303832520
         | 
| 69 | 
            +
            - !ruby/object:Gem::Dependency
         | 
| 70 | 
            +
              name: rspec
         | 
| 71 | 
            +
              requirement: &70327303832020 !ruby/object:Gem::Requirement
         | 
| 72 | 
            +
                none: false
         | 
| 73 | 
            +
                requirements:
         | 
| 74 | 
            +
                - - ~>
         | 
| 75 | 
            +
                  - !ruby/object:Gem::Version
         | 
| 76 | 
            +
                    version: 2.10.0
         | 
| 55 77 | 
             
              type: :development
         | 
| 56 78 | 
             
              prerelease: false
         | 
| 57 | 
            -
              version_requirements: * | 
| 79 | 
            +
              version_requirements: *70327303832020
         | 
| 58 80 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 59 | 
            -
              name:  | 
| 60 | 
            -
              requirement: & | 
| 81 | 
            +
              name: rake
         | 
| 82 | 
            +
              requirement: &70327303831600 !ruby/object:Gem::Requirement
         | 
| 61 83 | 
             
                none: false
         | 
| 62 84 | 
             
                requirements:
         | 
| 63 85 | 
             
                - - ! '>='
         | 
| @@ -65,11 +87,12 @@ dependencies: | |
| 65 87 | 
             
                    version: '0'
         | 
| 66 88 | 
             
              type: :development
         | 
| 67 89 | 
             
              prerelease: false
         | 
| 68 | 
            -
              version_requirements: * | 
| 90 | 
            +
              version_requirements: *70327303831600
         | 
| 69 91 | 
             
            description: SFC-SFS Scraping Library
         | 
| 70 92 | 
             
            email:
         | 
| 71 93 | 
             
            - ymrl@ymrl.net
         | 
| 72 | 
            -
            executables: | 
| 94 | 
            +
            executables:
         | 
| 95 | 
            +
            - zanryu
         | 
| 73 96 | 
             
            extensions: []
         | 
| 74 97 | 
             
            extra_rdoc_files: []
         | 
| 75 98 | 
             
            files:
         | 
| @@ -78,6 +101,7 @@ files: | |
| 78 101 | 
             
            - LICENSE
         | 
| 79 102 | 
             
            - README.md
         | 
| 80 103 | 
             
            - Rakefile
         | 
| 104 | 
            +
            - bin/zanryu
         | 
| 81 105 | 
             
            - examples/zanryu.rb
         | 
| 82 106 | 
             
            - lib/sfcsfs.rb
         | 
| 83 107 | 
             
            - lib/sfcsfs/agent.rb
         |