class API

Constants

EXR_AUTH
EXR_CAT_PATH
EXR_MAKE_WRKOUT
EXR_PATH
EXR_WORKOUT

Public Instance Methods

call_data() click to toggle source
# File lib/vega_api.rb, line 43
def call_data
    bar = TTY::ProgressBar.new("getting workout data... [:bar]", total: 40)
    create_categories
    create_exercises
    40.times do
        sleep(0.2)
        bar.advance  # by default increases by 1
    end
end
create_categories() click to toggle source
# File lib/vega_api.rb, line 18
def create_categories
    exr_cat = get_categories
    exr_cat["results"].each do |cat|
        category = Category.new
        category.muscle = cat["name"]
    end
end
create_exercises() click to toggle source
# File lib/vega_api.rb, line 26
def create_exercises
    exr_cat = get_categories
    exr_list = get_exercises
    exr_list["results"].each do |idx|
        new_exercise = Exercise.new
        exr_cat["results"].each do |val|
            #! set key category equal to value of category in other hash
            if idx["category"] == val["id"] && idx["language"] == 2 && idx["description"] != ""
                new_exercise.muscle = val["name"]
                new_exercise.name = idx["name"]
                new_exercise.description = "#{idx["description"][/\b(?<=<p>).*(?=<\/p>)/]}".insert(0, "\u{1F3CB} ")
            end
        end
    end
    Category.set_exercises
end
create_workout() click to toggle source
# File lib/vega_api.rb, line 71
def create_workout
    last_id = get_last_workout_id
    new_workout_id = last_id + 1
    new_workout = Workout.new(new_workout_id)
    send_workout = `curl --silent -H "#{EXR_AUTH}" -X POST --data "{ "id": #{new_workout.id}, "creation_date": #{new_workout.creation_date}, "comments": #{new_workout.comments} }" "#{EXR_WORKOUT}"`
    new_workout
end
get_categories() click to toggle source
# File lib/vega_api.rb, line 13
def get_categories
    exr_cat = `curl --silent -H "#{EXR_AUTH}" -X GET "#{EXR_CAT_PATH}"`
    exr_cat = JSON.parse(exr_cat)
end
get_category_objects() click to toggle source
# File lib/vega_api.rb, line 53
def get_category_objects
    Category.all
end
get_exercise_for_cat(cat_obj, index) click to toggle source
# File lib/vega_api.rb, line 57
def get_exercise_for_cat(cat_obj, index)
    cat_obj.get_exercises[index]
end
get_exercises() click to toggle source
# File lib/vega_api.rb, line 8
def get_exercises
    exr_list = `curl --silent -H "#{EXR_AUTH}" -X GET "#{EXR_PATH}"`
    exr_list = JSON.parse(exr_list)
end
get_last_workout_id() click to toggle source
# File lib/vega_api.rb, line 61
def get_last_workout_id
    workout = `curl --silent -H "#{EXR_AUTH}" -X GET "#{EXR_WORKOUT}"`
    workout = JSON.parse(workout)
    if workout["results"].to_a.length == 0
        last_id = 258370
    else
        last_id = workout["results"].to_a.last["id"]
    end
end