All Files (78.61% covered at 1.11 hits/line)
19 files in total.
360 relevant lines.
283 lines covered and
77 lines missed
- 1
class ApplicationController < ActionController::Base
- 1
protect_from_forgery with: :exception
- 1
helper_method :current_user
- 1
autocomplete :profile, :name
- 1
before_filter :require_login
- 1
def current_user
- 3
@current_user ||= User.find_by_id(session[:user_id]) if session[:user_id]
end
- 1
private
- 1
def require_login
- 1
unless current_user
- 1
redirect_to('/')
end
end
end
- 1
class NotesController < ApplicationController
- 1
before_action :get_user
- 1
def new
- 1
if params[:id]
- 1
@note = @user.find_note(params[:id])
- 1
@note.rating = nil
- 1
@note.attitude = nil
else
@note = @user.notes.new
end
- 1
@unique_productions = Production.all
- 1
@instruments = Instrument.all
end
- 1
def new_musician
id = params[:id]
@note = @user.find_note(id)
end
- 1
def new_actor
id = params[:id]
@note = @user.find_note(id)
end
- 1
def index
@notes = @user.all_notes
end
- 1
def show
@note = @user.find_note(params[:id])
@note_fields = note_fields
@instruments = @note.get_instruments
end
- 1
def edit
- 1
@note = @user.find_note(params[:id])
- 1
@note_fields = note_fields
- 1
@unique_productions = Production.all
end
- 1
def update
- 1
@note = @user.find_note(params[:id])
- 1
if @note.update(note_params)
- 1
flash[:update_notice] =<EMAIL_ADDRESS>was successfully updated."
- 1
redirect_to note_path(@note)
else
render 'edit'
end
end
- 1
def create
# Create a new profile if a profile matching the name doesn't exist yet
- 3
@note = @user.new_note(note_params)
- 3
if @note.save
- 2
matching_profile = Profile.find_by name: @note.name
- 2
if matching_profile
@note.profile_id = matching_profile.id
@note.save
matching_profile.notes << @note
matching_profile.save
else
- 2
@profile = Profile.create(:name => @note.name)
- 2
@note.profile_id = @profile.id
- 2
@note.save
- 2
@profile.notes << @note
- 2
@profile.save
end
- 2
instrument_ids = params[:instruments]
- 2
if instrument_ids
for id in instrument_ids do
@note.notes_instruments.create(:instrument_id => id)
end
end
- 2
if @note.role == "Musician"
- 1
redirect_to notes_new_musician_path(:id => @note.id)
- 1
elsif @note.role == "Actor/Actress"
- 1
redirect_to notes_new_actor_path(:id => @note.id)
else
redirect_to note_path(@note)
end
else
- 1
flash[:create_notice] = "Missing name or production."
- 1
redirect_to new_note_path
end
end
- 1
def create_musician
- 1
id = params[:id]
- 1
@note = @user.find_note(id)
- 1
@note.update(note_params)
- 1
@note.save
- 1
redirect_to note_path(@note)
end
- 1
def create_actor
- 1
id = params[:id]
- 1
@note = @user.find_note(id)
- 1
@note.update(note_params)
- 1
@note.save
- 1
redirect_to note_path(@note)
end
- 1
def destroy
- 1
@note = @user.find_note(params[:id])
- 1
@note.destroy
- 1
flash[:delete_notice] = "Note was deleted."
- 1
redirect_to notes_path
end
- 1
def home
@unique_productions = Production.all
@instruments = Instrument.all
end
- 1
def search
- 1
flash[:search_result_notice] = ""
- 1
filtered_notes = @user.all_notes
- 1
if note_params[:name] != ""
- 1
filtered_notes = filtered_notes.where("lower(name) like ?", "%#{note_params[:name]}%")
- 1
flash[:search_result_notice] += "Name: #{note_params[:name]}, "
end
- 1
if note_params[:role] != ""
- 1
filtered_notes = filtered_notes.where("role = ?", note_params[:role])
- 1
flash[:search_result_notice] += "Role: #{note_params[:role]}, "
end
- 1
if note_params[:production_id] != ""
- 1
filtered_notes = filtered_notes.where("production_id = ?", note_params[:production_id])
- 1
flash[:search_result_notice] += "Production: #{Production.find_by_id(note_params[:production_id]).name}, "
end
- 1
if params[:instruments]
@search_result = []
for note in filtered_notes do
instrument_ids = note.get_instrument_ids
plays_all_instruments = (params[:instruments] - instrument_ids).empty?
if plays_all_instruments
@search_result << note
end
end
instruments = Instrument.get_instruments_by_ids(params[:instruments])
flash[:search_result_notice] += "Instruments: #{instruments}, "
else
- 1
@search_result = filtered_notes
end
- 1
if flash[:search_result_notice] != ""
- 1
flash[:search_result_notice] = "Notes with " + flash[:search_result_notice]
- 1
flash[:search_result_notice] = flash[:search_result_notice][0..-3]
end
end
- 1
private
- 1
def note_params
- 15
params.require(:note).permit(:name, :production_id, :role, :description, :rating, :attitude, :star_sub, :musical_maturity, :reads_music, :harmony_singer)
end
- 1
def note_fields
- 1
{"attitude"=>{4=>"Brings joy to every rehearsal", 3=>"Professional and easy to work with", 2=>"Sometimes needs managing", 1=>"Difficult"}, "rating"=>{5=>"Yes!!", 4=>"Yes", 3=>"I won't cast them, but I won't object", 2=>"Rather not", 1=>"Definitely not"}, "star_sub"=>{true=>"Yes", false=>"No"},"reads_music"=>{3=>"Very well", 2=>"Can work on their own, but not sightread", 1=>"No"}, "harmony_singer"=>{4=>"Pro/Veteran", 3=>"Solidly teachable", 2=>"Teachable but weak", 1=>"No"}, "musical_maturity"=>{4=>"Pro/Veteran", 3=>"Solid", 2=>"A few weaknesses but fine", 1=>"Green"}}
end
- 1
def get_user
- 10
@user = User.find_by_id(session[:user_id])
end
end
- 1
class ProductionsController < ApplicationController
- 1
before_action :set_production, only: [:show, :edit, :update, :destroy]
# GET /productions
# GET /productions.json
- 1
def index
- 1
@productions = Production.all
end
# GET /productions/1
# GET /productions/1.json
- 1
def show
end
# GET /productions/new
- 1
def new
@production = Production.new
end
# GET /productions/1/edit
- 1
def edit
end
# POST /productions
# POST /productions.json
- 1
def create
- 2
@production = Production.new(production_params)
- 2
if @production.save
- 1
redirect_to notes_home_path, notice<EMAIL_ADDRESS>was successfully created."
else
- 1
flash[:notice] =<EMAIL_ADDRESS>already exists!"
- 1
redirect_to new_production_path
end
end
# PATCH/PUT /productions/1
# PATCH/PUT /productions/1.json
- 1
def update
end
# DELETE /productions/1
# DELETE /productions/1.json
- 1
def destroy
@production.destroy
redirect_to productions_url, notice: 'Production was successfully destroyed.'
end
- 1
private
# Use callbacks to share common setup or constraints between actions.
- 1
def set_production
@production = Production.find(params[:id])
end
# Never trust parameters from the scary internet, only allow the white list through.
- 1
def production_params
- 2
params.require(:production).permit(:name, :company, :opening_date)
end
end
- 1
class ProfilesController < ApplicationController
- 1
before_action :set_profile, only: [:show, :edit, :update, :destroy]
# GET /profiles
# GET /profiles.json
- 1
def index
@profiles = Profile.all
end
# GET /profiles/1
# GET /profiles/1.json
- 1
def show
end
# GET /profiles/new
- 1
def new
@profile = Profile.new
end
# GET /profiles/1/edit
- 1
def edit
end
# POST /profiles
# POST /profiles.json
- 1
def create
@existing = Profile.find_by name: profile_params[:name]
if @existing
flash[:profile_error_notice] = "Profile for<EMAIL_ADDRESS>already exists!"
redirect_to new_profile_path
else
@profile = Profile.new(profile_params)
if @profile.save
redirect_to notes_home_path, notice: "Profile for<EMAIL_ADDRESS>was successfully created."
else
flash[:profile_error_notice] = "Error creating profile for<EMAIL_ADDRESS>redirect_to new_profile_path
end
end
end
# PATCH/PUT /profiles/1
# PATCH/PUT /profiles/1.json
- 1
def update
respond_to do |format|
if @profile.update(profile_params)
format.html { redirect_to @profile, notice: 'Profile was successfully updated.' }
format.json { render :show, status: :ok, location: @profile }
else
format.html { render :edit }
format.json { render json: @profile.errors, status: :unprocessable_entity }
end
end
end
# DELETE /profiles/1
# DELETE /profiles/1.json
- 1
def destroy
@profile.destroy
respond_to do |format|
format.html { redirect_to profiles_url, notice: 'Profile was successfully destroyed.' }
format.json { head :no_content }
end
end
- 1
private
# Use callbacks to share common setup or constraints between actions.
- 1
def set_profile
@profile = Profile.find(params[:id])
end
# Never trust parameters from the scary internet, only allow the white list through.
- 1
def profile_params
params.require(:profile).permit(:name, :photo_url, :resume_url)
end
end
- 1
module ApplicationHelper
end
- 1
module HomeHelper
end
- 1
module NotesHelper
end
- 1
module ProductionsHelper
end
- 1
module ProfilesHelper
end
- 1
module SessionsHelper
end
- 1
class Instrument < ActiveRecord::Base
- 1
validates :name, presence: true
- 1
has_many :notes_instruments
- 1
has_many :notes, through: :notes_instruments
- 1
def self.get_instruments_by_ids(ids)
instruments = ""
for id in ids do
instruments << "#{Instrument.find_by_id(id).name}, "
end
instruments = instruments[0..-3]
return instruments
end
end
- 1
class Note < ActiveRecord::Base
- 1
validates :name, presence: true
- 1
validates :production_id, presence: true
- 1
belongs_to :user
- 1
belongs_to :production
- 1
belongs_to :profile
- 1
has_many :notes_instruments
- 1
has_many :instruments, through: :notes_instruments
- 1
def find_by_name(name)
end
- 1
def self.get_unique_column_values(column)
Note.uniq.pluck(column)
end
- 1
def get_instruments
instruments = ""
for instrument in self.instruments do
instruments << "#{instrument.name}, "
end
instruments = instruments[0..-3]
end
- 1
def get_instrument_ids
ids = []
for instrument in self.instruments do
ids << "#{instrument.id}"
end
return ids
end
end
- 1
class Production < ActiveRecord::Base
- 1
has_many :notes, dependent: :destroy
- 1
before_save :check_unique
- 1
private
- 1
def check_unique
- 4
if Production.exists?(:name => self.name)
- 2
return false
else
- 2
return true
end
end
end
- 1
class Profile < ActiveRecord::Base
- 1
has_many :notes
end
- 1
class User < ActiveRecord::Base
- 1
has_many :notes, dependent: :destroy
- 1
def self.from_omniauth(auth)
where(provider: auth.provider, uid: auth.uid).first_or_create do |user|
user.provider = auth.provider
user.uid = auth.uid
user.name = auth.info.name
user.oauth_token = auth.credentials.token
# user.oauth_expires_at = Time.at(auth.credentials.expires_at)
user.save!
end
end
- 1
def find_note(id)
self.notes.find(id)
end
- 1
def all_notes
self.notes.all
end
- 1
def new_note(note_params)
self.notes.new(note_params)
end
end
- 1
require 'spec_helper'
- 1
describe NotesController do
- 1
before(:each) do
- 10
controller.class.skip_before_filter :require_login
- 10
request.env["omniauth.auth"] = OmniAuth.config.mock_auth[:facebook]
- 10
@note = double("Note")
- 10
@user = double("User")
- 10
@user.stub(:find_note).and_return(@note)
- 10
@user.stub(:new_note).and_return(@note)
- 10
User.stub(:find_by_id).and_return(@user)
end
- 1
describe 'creating a new note' do
- 1
it 'should direct user to create notes page' do
- 1
expect(@user).to receive(:find_note)
- 1
expect(@note).to receive(:rating=)
- 1
expect(@note).to receive(:attitude=)
- 1
get :new, :id => 1
end
- 1
it 'should successfully add a new note for fields on first page and redirect to page with musician specific fields' do
- 1
@production = Production.create(:name => "Dummy Production")
- 1
@production.save
- 1
@note = Note.create({:name => "Double Note", :production_id => 1})
- 1
@note.save
- 1
@user = double("User")
- 1
@user.stub(:find_note).and_return(@note)
- 1
@user.stub(:new_note).and_return(@note)
- 1
User.stub(:find_by_id).and_return(@user)
- 1
@note.role = "Musician"
- 1
@note.id = 1
- 1
@note.save
- 1
post :create, :note => {:name => "Dummy Name", :production => "Dummy Production", :role => "Musician", :rating => 5}
- 1
response.should redirect_to notes_new_musician_path(:id => 1)
end
- 1
it 'should successfully add a new note for fields on first page and redirect to page with actor specific fields' do
- 1
@production = Production.create(:name => "Dummy Production")
- 1
@production.save
- 1
@note = Note.create(:name => "Double Note", :production_id => 1)
- 1
@note.save
- 1
@user = double("User")
- 1
@user.stub(:find_note).and_return(@note)
- 1
@user.stub(:new_note).and_return(@note)
- 1
User.stub(:find_by_id).and_return(@user)
- 1
@note.role = "Actor/Actress"
- 1
@note.id = 2
- 1
@note.save
- 1
post :create, :note => {:name => "Dummy Name", :production => "Dummy Production", :role => "Actor", :rating => 5}
- 1
response.should redirect_to notes_new_actor_path(:id => 2)
end
- 1
it 'should successfully add a new note for musician specific fields in the db' do
- 1
@note.stub(:save).and_return(true)
- 1
expect(@user).to receive(:find_note).with("1")
- 1
expect(@note).to receive(:update).with("star_sub" => true, "musical_maturity" => "4")
- 1
expect(@note).to receive(:save)
- 1
post :create_musician, :note => {:star_sub => true, :musical_maturity => 4}, :id => 1
- 1
response.should redirect_to note_path(@note)
end
- 1
it 'should successfully add a new note for actor/actress specific fields in the db' do
- 1
@note.stub(:save).and_return(true)
- 1
expect(@user).to receive(:find_note).with("2")
- 1
expect(@note).to receive(:update).with("reads_music" => "3", "harmony_singer" => "4")
- 1
expect(@note).to receive(:save)
- 1
post :create_actor, :note => {:reads_music => 3, :harmony_singer => 4}, :id => 2
- 1
response.should redirect_to note_path(@note)
end
- 1
it 'should render create note page again if Name or Production not specified' do
- 1
@note.stub(:save).and_return(false)
- 1
post :create, :note => {:role => "Musician"}
- 1
response.should redirect_to new_note_path
end
end
- 1
describe 'deleting an existing note' do
- 1
it 'should successfully remove a note from the db' do
- 1
expect(@user).to receive(:find_note)
- 1
@note.stub(:destroy).and_return(true)
- 1
expect(@note).to receive(:destroy)
- 1
post :destroy, :id => 1
- 1
response.should redirect_to notes_path
end
end
- 1
describe 'editing an existing note' do
- 1
it 'should return a form to edit the note' do
- 1
expect(@user).to receive(:find_note)
- 1
get :edit, :id => 1
end
- 1
it 'should update the note based on new information entered' do
- 1
expect(@user).to receive(:find_note)
- 2
allow(@note).to receive(:update) {true}
- 1
expect(@note).to receive(:update).with("name" => "Dummy Name", "production_id" => "1", "role" => "Musician", "rating" => "5", "star_sub" => true, "musical_maturity" => "4")
- 1
expect(@note).to receive(:name)
- 1
post :update, :note => {:name => "Dummy Name", :production_id => "1", :role => "Musician", :rating => 5, :star_sub => true, :musical_maturity => 4}, :id => 1
- 1
response.should redirect_to note_path(@note)
end
end
- 1
describe 'searching through all notes' do
- 1
it 'should filter through notes using each of the categories specified' do
- 1
mock_production = double("Mock Production")
- 1
mock_production.stub(:name).and_return("Mock Production")
- 1
@search_result = double("Search Result")
- 1
@user.stub(:all_notes).and_return(@search_result)
- 1
@search_result.stub(:where).and_return(@search_result)
- 1
Production.stub(:find_by_id).and_return(mock_production)
- 1
expect(@search_result).to receive(:where).with("lower(name) like ?", "%dummy_name%")
- 1
expect(@search_result).to receive(:where).with("production_id = ?", "dummy_id")
- 1
expect(@search_result).to receive(:where).with("role = ?", "dummy_role")
- 1
post :search, :note => {:name => "dummy_name", :production_id => "dummy_id", :role => "dummy_role"}
end
end
end
- 1
require 'spec_helper'
# This spec was generated by rspec-rails when you ran the scaffold generator.
# It demonstrates how one might use RSpec to specify the controller code that
# was generated by Rails when you ran the scaffold generator.
#
# It assumes that the implementation code is generated by the rails scaffold
# generator. If you are using any extension libraries to generate different
# controller code, this generated spec may or may not pass.
#
# It only uses APIs available in rails and/or rspec-rails. There are a number
# of tools you can use to make these specs even more expressive, but we're
# sticking to rails and rspec-rails APIs to keep things simple and stable.
#
# Compared to earlier versions of this generator, there is very limited use of
# stubs and message expectations in this spec. Stubs are only used when there
# is no simpler way to get a handle on the object needed for the example.
# Message expectations are only used when there is no simpler way to specify
# that an instance is receiving a specific message.
- 1
describe ProductionsController do
- 1
before (:each) do
- 2
controller.class.skip_before_filter :require_login
- 2
request.env["omniauth.auth"] = OmniAuth.config.mock_auth[:facebook]
- 2
@production = double("New Production")
- 2
Production.stub(:new).and_return(@production)
end
- 1
describe 'creating a new production' do
- 1
it 'should redirect to the home page upon success' do
- 1
@production.stub(:save).and_return(true)
- 1
@production.stub(:name).and_return("Successful Production")
- 1
post :create, :production => {:name => "Sucessful Production"}
- 1
response.should redirect_to notes_home_path
end
- 1
it 'should redirect to create new production page upon failure' do
- 1
@production.stub(:save).and_return(false)
- 1
@production.stub(:name).and_return("Failed Production")
- 1
post :create, :production => {:name => "Failed Production"}
- 1
response.should redirect_to new_production_path
end
end
end
- 1
require 'spec_helper'
- 1
describe "Productions" do
- 1
describe "GET /productions" do
- 1
it "works! (now write some real specs)" do
# Run the generator again with the --webrat flag if you want to use webrat methods/matchers
- 1
get productions_path
# response.status.should be(200)
end
end
end
- 1
require 'spec_helper'
- 1
describe "Profiles" do
- 1
describe "GET /profiles" do
- 1
it "works! (now write some real specs)" do
# Run the generator again with the --webrat flag if you want to use webrat methods/matchers
- 1
get profiles_path
# response.status.should be(200)
end
end
end


Constructor
new Client(config)
Parameters:
| Name | Type | Description |
|---|---|---|
config |
Config | An instance of Config used to configure the Client. |
Properties:
| Name | Type | Description |
|---|---|---|
product |
ProductResource | The property under which product fetching methods live. |
collection |
CollectionResource | The property under which collection fetching methods live. |
shop |
ShopResource | The property under which shop fetching methods live. |
checkout |
CheckoutResource | The property under which shop fetching and mutating methods live. |
image |
ImageResource | The property under which image helper methods live. |
Methods
(static) buildClient()
Primary entry point for building a new Client.
fetchNextPage(Arrayopt) → {Promise|Array.<GraphModel>}
Fetches the next page of models
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
Array |
models |
<optional> |
The paginated set to fetch the next page of |
Returns:
A promise resolving with an array of GraphModel
s of the type provided.
- Type
- Promise | Array.<GraphModel>
Example
client.fetchNextPage(products).then((nextProducts) => {
// Do something with the products
});


--- layout: base title: Home ---
I'm PostDoc at the University of Geneva who studies topics in Geometric Group Theory and Formal Language Theory. For more details on my research topics, please see my Research page.
You can find my contact information at the bottom of this page. If you have any questions, corrections or suggestions feel free to email me.


User
User
| Code | Name | Position | Group | Action | ||
|---|---|---|---|---|---|---|
| 01 | Super Administrator |<EMAIL_ADDRESS>| Super Administrator | Super Administrator | ||
| 02 | Ahmad bin Abu |<EMAIL_ADDRESS>| Pegawai ICT | Super Administrator | ||
| 03 | Muhammad Azwan bin Shafie |<EMAIL_ADDRESS>| Penolong Pegawai ICT | Portal Admin | ||
| 04 | Khalimah binti Baharom |<EMAIL_ADDRESS>| Finance Executive | Executive User | ||
| 05 | Nur Safitri |<EMAIL_ADDRESS>| Penolong Pegawai ICT | Agency Admin | ||
| 06 | Zafiq Syuqran |<EMAIL_ADDRESS>| Penolong Pegawai ICT | Agency User |


THE SUM OF US A film review by Mark R. Leeper Copyright 1995 Mark R. Leeper
Capsule: David Stevens's stage play is adapted for the screen. A father and his gay son live alone together in a middle-class neighborhood in Sydney, each looking for a mate. The minimal story moves slowly, but the character development and the unusual father-son relationship make this a watchable and well-constructed film. Rating: +1 (-4 to +4)
David Stevens is probably most notable in this country for co- authoring BREAKER MORANT together with Bruce Beresford and Jonathan Hardy. That was a very political film. His SUM OF US, based on his own stage play, is a very different sort of story. At the center of this story are Harry Mitchell and his son Jeff (Jack Thompson of the excellent TURTLE BEACH and Russell Crowe of ROMPER STOMPER). We see them doing some very normal things like having dinner together. Jeff, as we quickly learn, is gay.  Most of the time he presents a face of complete toleration, but find him in the right mood and he will admit that he wishes his son would know the joy of "planting his seed and seeing it grow," as he puts it. And if you catch Harry drunk and with his defenses down, you can tell that his natural instincts are anti-gay. Still, he is a man of wit and intelligence who greatly loves his son and who, while in control, will make every effort to be supportive. Harry's determination to be not just tolerant but chummy with Jeff's boyfriend Greg (John Polson) ironically is more of a hindrance than a help in that relationship. But if Harry is disrupting Jeff's relationship, Jeff's being gay may impact Harry's romance with an attractive divorcee he has met through a dating service.
Jack Thompson is a familiar face in Australian cinema and has been in such films as MAD DOG MORGAN, BREAKER MORANT, and THE EARTHLING. Here he gives a likable and nicely understated performance. This really is his film and even in moments of minimalist repartee with his son, a natural charm and wit shine through. Crowe is fully credible as the son but somehow is not able to command the same audience empathy that Thompson does.
Stevens creates a real study in the degrees of tolerance among the families shown in this film. In Jeff's family the dominant emotion is love; in Greg's it is anger. Greg's father seems to have little use for his son, not even knowing that his son is gay. The one really unconventional touch in the style of this film is to have Harry and Jeff talk directly to the camera frequently. This technique is often used in films, but rarely to this degree. Curiously, this is not at all bothersome when it is first used, but toward the end of the film there are cases where it is awkwardly inappropriate.
This is a film with some comedy and some sadness that warmly explores an unusual father-son relationship. There are no thrills and no special effects, just a simple story. I wish this country would make more of this sort of film. It gets a laid-back +1 on the -4 to +4 scale.
Mark R. Leeper<EMAIL_ADDRESS>The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Drop a CSV file here ->
What's the workflow?
1. From your TFS backlog query in VS > Open in Microsoft Office > Open Query in Microsoft Excel
2. Save the Excel file as-is to your desktop in .csv format (say yes to all the prompts)
3. Drop it up above, then Ctrl+P and switch to landscape for best results
Expected schema: ID, Stack Rank, Title, Keywords, Iteration Path, Description


'Tautulli' (<http://tautulli.com>) is a monitoring application for 'Plex' Media Servers (<https://www.plex.tv>) which collects a lot of data about media items and server usage such as play counts. This package interacts with the 'Tautulli' API of any specified server to get said data into R. The 'Tautulli' API documentation is available at <https://github.com/Tautulli/Tautulli/blob/master/API.md>.
| Version: | 0.3.0 |
| Depends: | R (≥ 3.1) |
| Imports: | httr, magrittr, plyr, purrr, tibble |
| Suggests: | covr, dplyr, testthat, tidyr |
| Published: | 2018-07-11 |
| Author: | Lukas Burk [aut, cre] |
| Maintainer: | Lukas Burk <lukas at quantenbrot.de> |
| BugReports: | https://github.com/jemus42/tauturri/issues |
| License: | MIT + file LICENSE |
| URL: | https://github.com/jemus42/tauturri |
| NeedsCompilation: | no |
| Materials: | README NEWS |
| CRAN checks: | tauturri results |
| Reference manual: | tauturri.pdf |
| Package source: | tauturri_0.3.0.tar.gz |
| Windows binaries: | r-devel: tauturri_0.3.0.zip, r-release: tauturri_0.3.0.zip, r-oldrel: tauturri_0.3.0.zip |
| OS X binaries: | r-release: tauturri_0.3.0.tgz, r-oldrel: tauturri_0.3.0.tgz |
| Old sources: | tauturri archive |
Please use the canonical form https://CRAN.R-project.org/package=tauturri to link to this page.


mode
on-the-ground
relative-to-ground
relative-to-scene
absolute-height
offset
expression
unit
feet
kilometers
meters


请参阅: 说明
| 接口 | 说明 |
|---|---|
| WXMediaMessage.IMediaObject |
Interface of media message 媒体消息对象接口
|
| 类 | 说明 |
|---|---|
| GetMessageFromWX |
WeChat sends requests to applications.
|
| GetMessageFromWX.Req |
Request class of GetMessageFromWX, extend from BaseReq
GetMessageFromWX请求类，继承自BaseReq
|
| GetMessageFromWX.Resp |
Response class of GetMessageFromWX, extend from BaseResp
GetMessageFromWX响应类，继承自BaseResp
|
| LaunchFromWX |
WeChat launches application.
|
| LaunchFromWX.Req | |
| LaunchFromWX.Resp |
Response class of ShowMessageFromWX, inherited from
BaseResp ShowMessageFromWX响应类，继承自BaseResp
|
| SendAuth |
WeChat OAuth authentication; authorizes applications via WeChat client
微信OAuth验证功能，通过微信客户端对第三方请求的权限进行授权
|
| SendAuth.Req |
Request class of SendAuth, extend from BaseReq
SendAuth请求类，继承自BaseReq
|
| SendAuth.Resp |
Response class of SendAuth, extend from BaseResp
SendAuth响应类，继承自BaseResp
|
| SendMessageToWX |
Message sharing request started by applications
第三方应用主动向微信发起的消息分享请求
|
| SendMessageToWX.Req |
Request class of SendMessageToWX, extend from BaseReq
SendMessageToWX请求类，继承自BaseReq
|
| SendMessageToWX.Resp |
Response class of SendMessageToWX, extend from BaseResp
SendMessageToWX响应类，继承自BaseResp
|
| ShowMessageFromWX |
Message displaying request that WeChat sends to applications
微信向第三方应用发起的消息展示请求
|
| ShowMessageFromWX.Req |
Request class of ShowMessageFromWX, inherited from BaseReq
ShowMessageFromWX请求类，继承自BaseReq
|
| ShowMessageFromWX.Resp |
Response class of ShowMessageFromWX, inherited from BaseResp
ShowMessageFromWX响应类，继承自BaseResp
|
| WXAppExtendObject |
Derived class of WXMediaMessage.IMediaObject; used to describe a application object.
|
| WXAppLaunchData | |
| WXAppLaunchData.Builder | |
| WXDesignerSharedObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXEmojiObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXEmojiPageSharedObject |
用于分享表情列表，表情单品等
Created by cpan on 16/3/25.
|
| WXEmojiSharedObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXFileObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXGameVideoFileObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXImageObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXLocationObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXMediaMessage |
Contents of WeChat media message 微信媒体消息内容
|
| WXMediaMessage.Builder |
Builder for WXMediaMessage WXMediaMessage构造器
|
| WXMiniProgramObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXMusicObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXTextObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXVideoFileObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXVideoObject |
Derived class of WXMediaMessage.IMediaObject.
|
| WXWebpageObject |
Derived class of WXMediaMessage.IMediaObject.
|


Memory care
Specifically designed memory care secured environments to care and protect your love ones with healthcare professionals trained to care for people living with dementia and cognitive disorders. Access to private nurses, physicians, hospitals and interactive communications to family members and healthcare provided as needed.
Memory Care communities, which include Alzheimer’s care and Dementia care facilities, consist of specially designed living spaces and supporting environments for those who are living with cognitive challenges brought on by Alzheimer’s care and dementia. These may include carefully considered flooring to reduce problematic patterns for those with Alzheimer’s or dementia and wall colors that help them to find the way. The dementia care environment helps cue its residents in their daily lives. Areas of the community are set up for safe engagement in activities such as gardening, kitchen work, and other life skills that provide purposeful and meaningful successful moments
Why Sol & Luna Health Resorts?
Aqui redactar el porque es mejor elegir Sol & Luna Health Resorts respecto a la competencia, ademas
de los beneficios que tiene hospedarse con nosotros y la diferencia de hospedarse en otra parte.
Find out Memory Care Residences
trending_flat


This is another page. Notice how when you navigated here, the entire page didn't refresh!
Any internal links will navigate with the pushState API, increasing perceived performance.
Try it out, head back to the home page.


MVASliderTableViewCell Class Reference
| Inherits from | UITableViewCell |
| Declared in | MVASliderTableViewCell.h MVASliderTableViewCell.m |
Tasks
Other Methods
-
slowLogo
property -
fastLogo
property -
speed
property -
text
property -
speedSlider
property -
objectName
property -
– initCell
Other Methods
Properties
fastLogo
The image for the fast speed limit
@property (weak, nonatomic) IBOutlet UIImageView *fastLogo
Availability
version 1.0
Discussion
The image for the fast speed limit
Declared In
MVASliderTableViewCell.h
objectName
An string used to customize the cell between the speed cell and the distance cell
@property NSString *objectName
Availability
version 1.0
Discussion
An string used to customize the cell between the speed cell and the distance cell
Declared In
MVASliderTableViewCell.h
slowLogo
The image for the slow speed limit
@property (weak, nonatomic) IBOutlet UIImageView *slowLogo
Availability
version 1.0
Discussion
The image for the slow speed limit
Declared In
MVASliderTableViewCell.h
speed
The label that’s used as a display of the selected speed
@property (weak, nonatomic) IBOutlet UILabel *speed
Availability
version 1.0
Discussion
The label that’s used as a display of the selected speed
Declared In
MVASliderTableViewCell.h
Instance Methods
awakeFromNib
Function that gets called to initialize the cell
- (void)awakeFromNib
Availability
version 1.0
Discussion
Function that gets called to initialize the cell
Declared In
MVASliderTableViewCell.m
initCell
Funcation that gets called to initialize the cell
- (void)initCell
Availability
version 1.0
Discussion
Funcation that gets called to initialize the cell
Declared In
MVASliderTableViewCell.h
loadWalkingSpeed
This function loads the walking speed indicated by the user. (The default value is 5km/h)
- (double)loadWalkingSpeed
Return Value
The speed in m/s
Discussion
This function loads the walking speed indicated by the user. (The default value is 5km/h)
Declared In
MVASliderTableViewCell.m
saveSpeed:
Function that saves the selected speed by the user
- (void)saveSpeed:(double)speed
Parameters
- speed
The speed selected
Availability
version 1.0
Discussion
Function that saves the selected speed by the user
Declared In
MVASliderTableViewCell.m
setSelected:animated:
Function that gets called when the cell is selected
- (void)setSelected:(BOOL)selected animated:(BOOL)animated
Parameters
- selected
A bool that indicates if the cell has been selected
- animated
A bool that indicates if the selection needs to be animated or not
Availability
version 1.0
Discussion
Function that gets called when the cell is selected
Declared In
MVASliderTableViewCell.m
sliderChanged:
Function that gets called when the user changes the value of the slider
- (IBAction)sliderChanged:(id)sender
Parameters
- sender
The slider object
Availability
version 1.0
Discussion
Function that gets called when the user changes the value of the slider
Declared In
MVASliderTableViewCell.m


pip_services3_components.build.Factory module
pip_services3_components.build.Factory
Factory implementation
- copyright
Conceptual Vision Consulting LLC 2018-2019, see AUTHORS for more details.
- license
MIT, see LICENSE for more details.
-
class
pip_services3_components.build.Factory.
Factory
Bases:
pip_services3_components.build.IFactory.IFactory
Basic component factory that creates components using registered types and factory functions.
Example:
factory = Factory() factory.registerAsType(Descriptor("mygroup", "mycomponent1", "default", "*", "1.0"), MyComponent1) factory.create(Descriptor("mygroup", "mycomponent1", "default", "name1", "1.0"))
-
can_create
(locator: Any) → Any Checks if this factory is able to create component by given locator.
This method searches for all registered components and returns a locator for component it is able to create that matches the given locator. If the factory is not able to create a requested component is returns null.
- Parameters
locator – a locator to identify component to be created.
- Returns
a locator for a component that the factory is able to create.
-
create
(locator: Any) → Any Creates a component identified by given locator.
- Parameters
locator – a locator to identify component to be created.
- Returns
the created component.
-
register
(locator: Any, factory: Any) Registers a component using a factory method.
- Parameters
locator – a locator to identify component to be created.
factory – a factory function that receives a locator and returns a created component.
-
register_as_type
(locator: Any, component_type: Any) Registers a component using its type (a constructor function).
- Parameters
locator – a locator to identify component to be created.
component_type – a component type.
-


click and point to coast through a werld of colors
so you think you need a more complicated colorpicker?
fine then ...
nosepicker.js
is totally complicated, and bloated, and ridiculous,
and allows for all kinds of customizations - it's the
perfect thing for you picky nosepickers
include the script, along with any options in the
data-param; specify nosepicker elements with
a
data-param; handle any events with listeners,
as usual; set any options dynamically by dispatching
an event to the nosepicker:

now I bet you want to know what all these things do,
don't you? ok, here it is:
- selector:
as per yoosh, this is the string that you
want to be the data-param and nose-input
event; by default, nosepicker.js selects all elements
with a data-nose parameter, and generates
a nose-input event; if, for example, you
changed this to "picker", then the script would
select all elements with data-picker as
a parameter, and generate a picker-input
event
- kind: this is a coma-separated string
which lists all the kinds of nosepicker listeners
you want to add to just this specific element;
the default is "touch,wheel" which will create
both a scroll listener and a touch listener for
touchscreens; the possible options are:
- wheel - scrolling up|dn, left|right;
ctrl+scroll changes transparency and
shift+scroll changes sensitivity
- touch - moving a touchpoint on touchscreens
changes hue and luminosity, using two touchpoints
changes transparency and saturation,
- swipe - either on a touchscreen, or with
a mouse, just swipe around; again, two fingers
acts as ctrl+swipe
- coast - this is point-and-fly type of
navigation; you just click in one spot,
either on a touchscreen on with a mouse,
and then you will fly through the colors
continuously in whichever direction you're
pointing
- point - is just like coast but uses
a pointer event
- colorsrc: the style aspect that
nosepicker.js will use as the starting color;
this might be "fill" if you have, for example,
an svg path
- loaded: the name of the nose-loaded
event that gets generated when a nosepicker loads
- input: the name of the nose-input
event that gets generated when the color changes
- colorSelf: boolean as to whether or not
the picker should color its own self - by default
it will, but you might not want that
- colorText: true|false if you want the
color of the text inside the nosepicker to be
contrasted with the selected color
- pattern: boolean true|false if you want
a patterned background behind transparent colors
- able: simply a boolean as to whether
the nosepicker is enabled
- sens: adjusts the sensitivity of the
motion in the X, and Y, direction - this is an
object specifying a float for the
adjustment to both the X‑sensitivity and the
Y‑sensitivity
all interactions with nosepickers are done through
dispatching events; various options can be
set directly, by sending
event.detail
values to the nosepicker; the prefix
will be whatever the
selector is,
which by default is
nose‑
- nose-set-value:
this sets the color value to whatever valid
css color string gets passed in
- nose-set-kind: you can actually
change the kind of nosepicker while
it's being used; you could dynamically switch
from a scroll listener to a coast listener
- nose-set-able: passing a boolean
will either disable or enable to nosepicker
- nose-set-sens: again, this is an
object that has an X, and a Y, float
value adjustment to the nosepicker's sensitivity;
for example, to double the sensitivity, pass in
{X:0.5, Y:0.5}
the
detail of the
nose-loaded event
is a
function that allows a shorthand method
for frequent communication through dispatch;
if you add a listener for
window.nose-loaded
you can create a function that allows communication
with nose-pickers like this:
patchooli('picker', 'nose-set-value', '#c30')
the parameters of that function are:
- a picker object, or a string
of its ID
- the string name of the event
- the value to pass to the picker
the sample nosepickers above will reset to their
original colors when you double-click them -
as another example, if you wanted to directly set the
color of a nosepicker called 'picker' to a hex
value for red when you double-click the window,
this listener would do that:
window.addEventListener('dblclick', () => {
picker.dispatchEvent(new CustomEvent(
'nose-set-value',
{detail: '#c30'}
));
});


From:Edie Leschber To:Becky Young; Laynie East Sent:2017-01-11T04:46:15.0000000Z Subject:New Reporting Contact for Natural Gas Teams
Hello everyone!
Just wanted to send a quick note to let those of you who don't know already
that I will be moving into a new position within the next week or so and will
no longer be the Reporting Contact for the Natural Gas Teams. I am moving
over to manage the Reporting Groups for the Back Office and Group Teams.
Please welcome Laynie East as my replacement. She can be reached at X3-3131
and you may begin calling her with any Natural Gas Team related needs
immediately.
I will certainly be assisting in the transition process and will assist her
with any of your requests on an as needed basis for a while. Please forward
this note to anyone in your groups who may need this information.
It has been a pleasure working with each of you over the last several months.
Thanks,
Edie
***********
EDRM Enron Email Data Set has been produced in EML, PST and NSF format by ZL Technologies, Inc. This Data Set is licensed under a Creative Commons Attribution 3.0 United States License <http://creativecommons.org/licenses/by/3.0/us/> . To provide attribution, please cite to "ZL Technologies, Inc. (http://www.zlti.com)."
***********
California


@moealabed
_boomies_
To contact my friend who makes the shoes and helps me with the custom clothing.
@hoodiekickz
hoodiekickz


--- layout: page title: "404: Page not found" permalink: /404.html ---
Sorry, you're in some place that doesn't exist. Head back Home by clicking here.


Grab the code here: https://bit.ly/2OUtDUN
Adafruit has branded these Neopixels
You can get them for half the price on Ebay as ws2812's
Import the NeoPixel Library
Import the NeoPixel Library
Let's try some examples and write our own code!
FastLED
Fast LED LibraryAPA102
APA102 aka “Superled”Remote Control
Hook Up the IR reciever
Receive_Custom_neo.ino


Tappable ghost-click demo
Problem
If this link is tapped, alert will pop up.
Tap me. There's a <a> under me.
Solution
If this link is tapped, alert will pop up.
Tap me. There's a <a> under me.


A line will connect a circles, If they are in the same row or column.
Drag the circles on the grid to make "Your Diagram" the same as the "Objective Diagram".
|
Objective Diagram
Your Diagram
|
To connect A and B, put these tokens on the same line.
To connect B and C, we must place C on the same line or on the same column as B.
But if we place C on the same line as B, so we get a line between A and C that we do not want to have.
So we have to place C on the same column as B. For example as well :
It remains to place D. So that D be connected to C, more than D is not connected to B Into A, we must place D on the same line as C, while avoiding the column of A. Here is a solution :
There are many other solutions, here is another example :
To connect A and B and C all three of them, put these tokens on the same line.
Then, To connect D to B, but without linking D to A or to C, we must place D on the same column as B.
Finally, To connect E to C and D, we must place E on the same column as C and on the same line as D.
An effective method is to focus on the "triangles" that are formed in the objective design. Indeed, a triangle linking 3 tokens indicates that these 3 tokens are on the same line or the same column.
To connect A and D and G all three of them, put these tokens on the same line. Then, To connect D and C and F all three of them, let's put these chips on the column of D.
To connect H and E and C all three of them, we place H and E on the line of C, while avoiding the columns already used.
Finally, To connect B to E and to F, we must place B to both on the same column as E and on the same line as F.


I'm in high school, and had a really busy week ahead of me. My teachers had booked at least a test every day of the week, and I was way behind on notes. In other words, I needed a miracle.
My friend hooked me up with three 30 mg adderalls, and my other friend gave me two 50 mg vyvanse. I went to CVS to buy no-doz. Then the fun began. I woke up at 8:00 am sunday morning, and pulled an all-nighter no problem that night without taking a single drug. Monday during the day, I started crashing. I snuck into the bathroom and cut one of the adderall in half, and blew the 15 mg line. In 5 minutes my fatigue was washed away, and everything was almost severely clear.
I went to pull another all-nighter that night, blowing the rest of the 15 mg that I had left. I finished a giant chunk of my work with no problems. I was alert and my teeth were grinding a little, and I hadn't eaten since saturday. Things continued well and good until Thursday night. I still hadn't slept or eaten yet, and I went to the bathroom only once a day to pee for about 3 minutes.
Monday, Tuesday, and Wednesday were much the same. No sleep, more adderall, no significant problems. Thursday night, amphetamine psychosis set it. The caffeine pills were causing this obnoxious buzzing noise in my head, and every shadow became an enemy. Things in my room became animated. I chain-smoked three packs of cigarettes to calm down. At 4 AM I emerged from a sort of trance state, 300 feet into the woods behind my house. It was raining. I was barefoot and shirtless. My biology textbook was on my head, and I was holding a flashlight under my chin. I have, to this day, zero recollection of ever going outside. I began to tremble, and my head became unbearable heavy. I popped my last vyvanse and went to school on friday.
 The people in the hallway melted into an amorphous blob that threatened to swallow me. Time moved equal parts slow and fast. The muscles in my back and arms began to slowly stiffen, like they were turning to stone. My eyes stung so badly and were so dry that blinking was excruciating. I broke three pencils because I was shaking so hard. Loud noises caused me to bury my face and hide. I didn't know who I was, where I was. Everything was terrifyingly unfamiliar. The bell ringing almost made my heart stop, and the legs of every desk began to sway. It started to feel like the air was gelatinous, and moving became an unbelievable effort.
Thinking I needed to come down from the amphetamine high, I went to a friend's after school to smoke some weed. After one bowl, I felt my blood pressure skyrocket. The tension in my veins was unbearable, and I kept hallucinating that my skin was bursting open from the pressure exerted on my blood vessels. The world began to blur in and out of focus. I drank a bottle of water, took 2 tylenol PM, and passed out.
My friend reported that I was sleep walking for about half an hour. I would wake up periodically, laughing and crying almost simultaneously. I also was told that I sat bolt upright screaming three times, as if I'd had a bad nightmare. I sweat through her sheets. Everything was soaked. I then slept for 15 hours straight.
Honestly, amphetamines are fine for one all-nighter or recreational use. But I was awake for about 135 hours straight. I wouldn't wish it on my worst enemy.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


We’re a locally owned valet waste management company based in North Carolina. Because we genuinely care about our community, we go above and beyond simply hauling tenants’ trash to communal dumpsters. Our team also collects your tenants’ weekly recyclables to haul them off-site. We want to make it as easy and convenient as possible for you, as a property owner or manager, while your tenants enjoy a cleaner and more sustainable environment.
We pride ourselves on how much we do for our North Carolina community. We’re actively working towards increasing the number of households and apartment complexes that recycle as much as they can. We’re taking the time to educate tenants and property managers on the best waste management and recycling practices that they can use in their daily lives, and we can do the same for you.
Carolina Valet Waste is making progress profitable! We’re offering tenants and property managers monthly incentives to make sure that they not only participate in creating a greener community, but that they also get a greater return on their hard work and investment.
We offer a wide range of waste removal and recycling services. Each member of our service and management team is dedicated to giving you the very best in waste management. Take a look at some of the services listed below to see how we can give you the convenience, care, and professionalism you deserve.
 How’s that for convenient? A uniformed trash valet will arrive after leasing hours to pick up, transport, and dispose of your commercial property waste as quickly as possible. Our doorstep trash pickup services are available from Sunday-Thursday every week.
 We want to make recycling as easy as possible, which is why our valet not only collects your residents’ recyclables, but also filters out any items that are not actually recyclable to ensure your community is recycling right. Our recycling services are available Sunday-Thursday after community leasing hours.
When it comes to waste removal, we’ll go the extra sweep to make sure that no trash or waste stays behind after we’ve done our rounds. We’ll make sure your tenants’ breezeways are squeaky clean so they can enjoy a spotless and tidy doorstep.
If you have any questions, compliments, or complaints about our waste removal services, feel free to reach out to us. One of our representatives or team members will contact you as soon as possible. Give us a call today and Carolina Valet Waste will help you enjoy waste-free, sustainable, and cleaner living!


Create an OptionsManager object, to easily manage an option file to be used in your functions and scripts.
OptionsManager(options_path, default_options = list(), permissions = "600", auto_save = TRUE, strict = FALSE, verbose = FALSE)
| options_path | the path to the option file. For script I recommend to use something like "./option_file.json", for R packages something like "~/.package_name/option_file.json" |
|---|---|
| default_options | this should be a list containing the default values to use when creating an options file. |
| permissions | a string containing the permissions to apply to the file. It defaults to "600" |
| auto_save | whether to save automatically the option file when you change an option value. It defaults to TRUE |
| strict | whether only option names appearing in "default_options" should be accepted or not. It defaults to FALSE, but I recommend to set it to TRUE if you are using simpleroptions in a package. |
| verbose | whether to show some information messages or not. It defaults to FALSE. |
an "OptionsManager" R6 object
exOpt <- OptionsManager( options_path = "./example_options.json", default_options = list( image_directory = ".", image_extension = ".jpg" ) ) # You can modify the values in the options file using the `set()` method exOpt$set(image_directory = "images", image_extension = ".png")


Upload a PDF here. The Test Bank of Erised will select a few questions. Best used for large test banks.
Here, access a few random questions from our database.


Send your homework as a single ZIP archive with your files, or send a link to your GitHub repo. Try to keep line lengths below 80 characters.
 The program will have a button for rolling a die and a label for the result (a number from 1 to 6).


#include <db_cxx.h>int DbTxnMgr::close();
The DbTxnMgr::close method detaches a process from the transaction environment specified by the DbTxnMgr object. All mapped regions are unmapped and any allocated resources are freed. Any uncommitted transactions are aborted.
In addition, if the dir argument to DbTxnMgr::open was NULL and dbenv was not initialized using DbEnv::appinit, all files created for this shared region will be removed, as if the DbTxnMgr::unlink method were called.
In multi-threaded applications, only a single thread may call the DbTxnMgr::close method.
The DbTxnMgr::close method either returns errno or throws an exception that encapsulates an errno on failure, and 0 on success.
The DbTxnMgr::close method may fail and throw an exception for any of the errors specified for the following Berkeley DB and C library functions: abort(3), close(3), fcntl(3), fflush(3), fprintf(3), free(3), getpid(3), DbLockTab::vec, DbLog::flush, memset(3), munmap(3), shmctl(3), shmdt(3), strerror(3), strlen(3), DbTxn::abort, unlink(3), vfprintf(3), and vsnprintf(3).


Tech Dada aims to promote digital inclusion among young women (in Kenya.)
A world where young women are confidently pursuing opportunities in technology. while empowering themselves, their families and communities.)
Sub-Saharan Africa is poised for major population growth, and by mid-century, 40% of the world’s children will live on the continent. It is unlikely that that the current education model will be sufficient for preparing the incoming generations for life in a 21st century world, especially unless current challenges are overcome. Even as Kenya sets itself up to be a regional tech hub, Information Technology (IT) education in Turkana lags far behind where it needs to be. A lack of qualified teachers, inadequate infrastructure, outdated curricula, and prohibitively high Internet costs are all barriers that prevent Kenyan youth from gaining skills relevant for the digital world.
The challenges are even more substantial for young women and girls, who are more likely than boys to be out of school. In Turkana region, computers are still considered by many to be a male domain, and many young women shy away from computer spaces such as cyber cafes due to fear of harassment. TechDada is an initiative that seeks to equip girls and young women with mindsets and skills that will enable them to confidently pursue 21st-century opportunities. Its vision is to ensure more young women in East Africa pursue careers in technology, design, and business with a focus on solving real problems in local communities and globally. Tech Dada has created a curriculum and courses that increase awareness of tech opportunities for women and try to overturn the gender stereotypes that prevent young women from entering the field of technology.
Techdada is now active in two places: Nairobi, Kibera and Turkana, Lodwar. In Kibera we are mostly concentrating on empowering girls in high schools. In Turkana, our focus is on empowering the ladies in a tech program called learning Lions. We have trained so far about 30 ladies in the last three cohorts. We train on excellence, personality, character, vision and goals, self worth and confidence, planning, being professional, hope for young mothers, sexual reproductive health, stewardship, servant leadership. These sessions are engaging and practical. We encourage the girls to be more intentional in their pursuit irregardless of the title. Beneficiaries of the program report encouraging results from even a few short sessions. The girls are more confident speaking in front of a group, more articulate in sharing their ideas, more interested in technology and more aware of the challenges facing women in the industry, as well as the tools they can use to overcome those challenges. We have also conducted workshops with more than 200 girls in the region on the myths, challenges and benefits of technology. We have visited a girl’s school as well where we had an interesting day engaging upper primary school girls on the awesomeness of technology and the diverse careers they can land themselves in with tech knowledge.
Orientation
Prayers.
Presentation.
Introduction. (what, why, how).
Photos and videos showcase.
Lunch.
Dance and activities.
Group work{techie.} (tux typing, Graphics design).
scratch showcase.P5JS showcase.
Character, Being intentional, Excellence
Prinz Ludwig.
Votes of thanks.
Group photos and departure.
She is one of the co-founders of ‘Tech Dada,’ which seeks to improve the gender imbalance in technology that is prevalent in many communities around informal region. She is a student as well as a volunteer at Learning Lions in Turkana. She is a Strong believer of women empowerment. She is the lead, facilitating Techdada in Turkana. She believes in creating a space where by both gender believe in themselves, become the best they can ever be, and feel they belong without discrimination and are appreciated in whatever they are passionate in.
Brizan Were is the project local director. A teacher by profession, he has 10 years teaching experience and have worked with the youths at various levels. He is very passionate in empowering women to become the best they can be as well as follow their passion. He is one of the strong supporters of Techdada initiative in Turkana. He Is actively engaged in motivating the young girls in the region to take up IT courses.
Ludwig is the founder of Startup lions and Learning lions that seek to help youths acquire IT skills that enables them develop their own company in the global digital industry and start earning good money that can sustain them and maximize on their potential. He also believes so much in women empowerment and women involvement In leadership positions and IT field. He is one of the strong believers of Techdada initiative in Turkana.
Bonny is one of the male coaches in Learning Lions. He is very passionate in helping the women in his residence Turkana Region. He does this by actively engaging in Techdada programs as well as pushing forward the HeFor She agenda by encouraging me to be involved in empowering women. He also seeks to create a platform where women are capable to explore their potential fully.
Apuu is one of the female coaches in Learning Lions. She is passionate in pushing forth the agenda of women being given opportunities in becoming the best they can be. She is involved actively with Techdada sessions as well as motivating the girls in the community. She champion the message of second chances to the women in the community who have completely lost hope.
When you register you get a free subscription to our news letter


--- layout: post title: 'SG I: Chapter 2 | Creating and Controlling a Database' date: 2007-12-04 16:03:19.000000000 +10:30 type: post published: true status: publish categories: - Oracle tags: - oracle - study meta: posturl_add_url: 'yes' _edit_last: '1' views: '667' ---
1. Start and stop the Oracle management agent.
>emctl start agent (stop)
The database as separate entities and not within the centralized Grid Control framework, issue the emctal start dbconsole. (stop)
2. Using iSql*Plus
>isqlplusctl start (stop)
Obtaining a List of Ports Used by the Oracle Components
To view a summary of which ports are in use by the various Oracle components, you can view the portlist.ini file. This file is normally located in the $ORACLE_HOME/install directory on Unix or %ORACLE_HOME/install directory on Windows. Here is an example of what you might see in the portlist.ini file:
Ultra Search HTTP port number =5620
Enterprise Manager Agent Port =
iSQL*Plus HTTP port number =5560
Enterprise Manager Console HTTP Port (orcl) = 5500
Enterprise Manager Agent Port (orcl) = 1830
Enterprise Manager Console HTTP 端口 (ORL) = 1158
Enterprise Manager 代理端口 (ORL) = 3938
Four accounts are preconfigured when you set up your database:
SYS The SYS user owns all the internal Oracle tables that constitute the data dictionary. Normally, you should not perform any actions as the SYS user and should ensure that this account is locked down. Also, don’t manually modify the underlying objects owned by the SYS user.
SYSTEM SYSTEM is an additional support user that contains additional administrative tablesand views. This account should also be locked down to prevent unauthorized use of it.
DBSNMP DBSNMP is a login used by the Enterprise Manager facility to monitor and gather performance statistics about the database.
SYSMAN SYSMAN is the equivalent of the SYS user for the Enterprise Manager facility. This Enterprise Manager administrator can create and modify other Enterprise Manager administrator accounts, as well as administer the database instance itself.
Storage Options
File System Storage
File system storage is the most common type of storage configuration for pre–Oracle 10g databases. This type of storage definition relies on the underlying operating system to maintain and manage the actual files that you as the DBA define. When you choose this option, the DBCA suggests a set of datafile names and directory locations for those files. You can modify this information at a later step in the database creation process.
The DBCA uses the Optimal Flexible Architecture (OFA) directory design for laying out the suggested file locations. The OFA is an Oracle-recommended method for designing a flexible directory structure and naming convention for your Oracle database files.
ASM Storage
Automated Storage Management (ASM) is a new type of storage mechanism available in Oracle 10g. ASM is designed to relieve the burden of disk and storage management and relies on Oracle to maintain your database storage. Instead of your managing many individual database files, ASM allows you to define disk groups for file management.
Using disk groups, you can define one or more groups of disks as a logical unit that Oracle views as a single unit of storage. This concept is similar in nature to the way that some operating systems, including various flavors of Unix, define volume groups.
Oracle manages the storage definitions of the database within a second database used exclusively by ASM to keep track of the disk group allocations. When you create a database and select the ASM option in the Storage Options screen, a series of screens guides you through the process of defining the secondary ASM database instance.
Raw Devices
You can also select a raw device as your storage definition. Raw devices are disks that are not managed by the underlying operating system. Instead of the underlying operating system controlling disk reading and writing activities, Oracle performs the actions directly to the underlying hardware without handing the responsibilities off to the operating system.
Typically, the systems administrator predefines the raw disk partitions that will constitute the specific raw devices. Then, you as the DBA map the raw devices to specific datafiles and redo log files.
STARTUP [NOMOUNT|MOUNT|OPEN] [PFILE/SPFILE=] [RESTRICT]
Note: When I finished this chapter, and do the exam. I make many mistakes. The exam is very detail, and I always very carelessly. I shold do it more serious and brightly.


Pig Game GUI
Pig is a folk jeopardy dice game with simple rules: Two players race to reach 100 points. Each turn, a
player repeatedly rolls a die until either a 1 ("pig") is rolled or the player holds and
scores the sum of the rolls (i.e. the turn total). At any time during a
player's turn, the player is faced with two decisions:
- roll - If the player rolls a
- 1: the player scores nothing and it becomes the opponent's
turn.
- 2 - 6: the number is added to the player's turn total and the
player's turn continues.
- hold - The turn total is added to the player's score and it
becomes the opponent's turn.
Problem: Implement a GUI for the game of Pig where the user plays
a succession of games against a computer player. A brief summary of
software requirements follows.
Overview
Your goal is to create a simple-yet-fun GUI implementation of the game of
Pig. The user is the starting player of the first game. The
starting player alternates with successive games. The computer plays a
"Keep Pace and End Race" policy as follows: Let the hold value be 21 + round((user score - computer score) / 8). If either player has 71 points
or more, or if the turn total is less than the hold value, then roll.
Otherwise, hold.
Resources
Image files are supplied in
PNG and JPEG formats.
Graphical User Interface Components
Main application frame titled "Pig", terminating program on close, and
containing:
- "Your Score:" label - fixed text label
- Your score value label - should update to reflect changes in user score
- "My Score:" label - fixed text label
- My score value label - should update to reflect changes in computer
score
- "Turn Total:" label - fixed text label
- Turn total value label - should update to reflect changes in turn total
- Die panel - area for displaying 100-by-100 die images, and roll/hold
images
- "Roll" button - enabled during user turn to trigger Roll Action
- "Hold" button - enabled during user turn to trigger Hold Action
- Pop-up window with:
- Game over text label - provides winner, final score, and prompts
user with new game decision.
- "New Game" button - triggers New Game Action
- "Quit" button - exits application
For the most part, layout is not specified. However, the related
label-value label pairs should be horizontally adjacent with the label to the
left of the value label.
Functional Specification
Initialization
- Create and layout all GUI components with the exception of the pop-up
window.
- Set both scores and turn total to 0.
- Display the "roll" image in the die panel.
- Set the starting player to the user.
- Set the current player to the user.
Roll Button
- Enable roll button during user turn.
- On roll button press, trigger Roll Action.
Roll Action
- Generate a random number r in the range [1, 6].
- Display the "die<r>" image in the die panel.
- If r is 1 ("pig"), set the turn total to 0, and trigger Change
Turn Action.
- Otherwise, add r to the turn total. If the current player score plus the
turn total is greater than or equal to the goal score of 100, trigger Hold
Action.
Hold Button
- Enable hold button during user turn.
- On hold button press, trigger Hold Action.
Hold Action
- Display the "hold" image in the die panel.
- Add the turn total to the current player's score.
- Set the turn total to 0.
- If the current player's score is greater than or equal to the goal score
of 100, trigger End Game Action.
- Otherwise, trigger Change Turn Action.
Change Turn Action
- Change the current player.
- Enable/disable roll and hold buttons if the user/computer is the current
player, respectively.
- If it is the computer's turn, begin the Computer Turn.
Computer Turn
- Note: In
many cases, a separate thread is advisable for the computer player to
prevent GUI updates from blocking.
- While the computer is the current player:
- Delay for approximately 1 second.
- Compute a hold value of 21 + round((user score - computer score) / 8).
- If either player has 71 points
or more, or if the turn total is less than the hold value, then trigger Roll
Action. Otherwise, trigger Hold Action.
End Game Action
- Create an display a popup window with:
- Game over text label - If the user has won, display "You win <user
score> to <computer score>. Would you like to play again?" If the
computer has won, display "I win <computer score> to <user score>. Would
you like to play again?".
- "New Game" button
- "Quit" button
- When the "New Game" button or "Quit" button is pressed, the
popup window
closes.
- If the "New Game" button is pressed:
- Set both scores and the turn total to 0.
- Change the starting player.
- If the current player is different than the starting player, trigger the
Change Turn Action.
- If it is the computer's turn, begin the Computer Turn. Otherwise,
display the "roll" image in the die panel.
- If the "Quit" button is pressed, the application terminates, closing the
main application frame.
Extra Exercises:
1. Use an alternative computer play policy. Let i be the player's score, j
be the opponent's score, and k be the current turn total.
Some alternative play policies:
- Hold at 25 or goal - Hold at the lesser of 25 and 100 - i.
- 4 Scoring Turns - Let t be the number of turns in which a
player has held so far. Hold at floor((100 - i)/(4 - t)).
- Score Base, Keep Pace, and End Race - If i >= 69 or j
>= 69, roll for the goal. Otherwise, hold at the greater of 19 and
j - 14.
2. Compute win statistics (e.g. games won, games lost, percentage won) and
display these at game end.
3. Extend design to three or more user/computer players.
4. (Advanced Project) Extend design to three or more user/computer players
over a network, using a client-server model.
Todd Neller


Our clients utilize our expertise to have more in-depth and actionable insights into their operational data, and to make sure automations are covered to the fullest
Our Services


| Home | Trees | Indices | Help |
|
|---|
|
|
object --+ | AbstractSwapParameterInfo --+ | RESwapParameterInfo --+ | MDRENSSwapParameterInfo --+ | ThermostattedMDRENSSwapParameterInfo
| Nested Classes | |
|
Inherited from |
| Instance Methods | |||
|
|||
|
Inherited from |
| Class Variables | |
|
Inherited from |
| Properties | |
|
collision_interval Interval during which collision may occur with probability collision_probability .
|
|
|
collision_probability Probability for a collision with the heatbath during one timestep. |
|
| temperature | |
|
Inherited from Inherited from Inherited from |
| Method Details |
x.__init__(...) initializes x; see help(type(x)) for signature
|
| Property Details |
collision_intervalInterval during which collision may occur with probability
|
collision_probabilityProbability for a collision with the heatbath during one timestep.
|
temperature
|
| Home | Trees | Indices | Help |
|
|---|
| Generated by Epydoc 3.0.1 on Tue Jul 4 20:19:06 2017 | http://epydoc.sourceforge.net |


Refer to the readme if you need help using this.
http://u.cubeupload.com/XBLOssia/NewSignatureThunderb.png


CoinDocs is developed by Shawn Wilkinson and John Tibble
This code for this site is available at its Github page.
Please consider contributing to the Bitcoin community by adding to (or improving) this site!


×
Login to your account!
Email Address
Password
Remember me
Forgot Your Password
Login
Don't Have an account? Sign up as a
Student
or
Teacher


Focussed Twitter
Non-focussed opacity
Opacity transition (s)
Remove focus delay (ms)
Tweet margin (rem)
Show sidebar?
Border tweets?
Border center column?
Permanently dim sides? (except on hover)
Hide seperator bars?
Focussed compose?


Estimates disease prevalence for a given index date, using existing registry data extended with Monte Carlo simulations.
| Version: | 1.0.0 |
| Depends: | R (≥ 2.10), survival |
| Imports: | data.table, doParallel, dplyr, foreach, ggplot2, lazyeval, lubridate, magrittr, tidyr |
| Suggests: | flexsurv, flexsurvcure, knitr, rms, testthat |
| Published: | 2018-06-07 |
| Author: | Stuart Lacy [cre, aut], Simon Crouch [aut], Stephanie Lax [aut] |
| Maintainer: | Stuart Lacy <stuart.lacy at york.ac.uk> |
| License: | GPL-2 |
| URL: | https://github.com/stulacy/rprev-dev |
| NeedsCompilation: | no |
| Materials: | README NEWS |
| CRAN checks: | rprev results |
| Reference manual: | rprev.pdf |
| Vignettes: |
rprev User Guide rprev User Guide |
| Package source: | rprev_1.0.0.tar.gz |
| Windows binaries: | r-devel: rprev_1.0.0.zip, r-release: rprev_1.0.0.zip, r-oldrel: rprev_1.0.0.zip |
| OS X binaries: | r-release: rprev_1.0.0.tgz, r-oldrel: rprev_1.0.0.tgz |
| Old sources: | rprev archive |
Please use the canonical form https://CRAN.R-project.org/package=rprev to link to this page.


Flames’ Sam Bennett out vs. Golden Knights with upper-body injury
by Sportsnet StaffCalgary Flames forward Sam Bennett will miss Sunday night’s game against the Vegas Golden Knights due to an upper-body injury.
No further details regarding the nature or severity of Bennett’s injury have been made available by the team at this time.
The 23-year-old forward has three goals and two assists in 20 games this season.


This class defines a factory for the main Ignite API. Use Start() method to start Ignite with default configuration. All members are thread-safe and may be used concurrently from multiple threads.
More...
|
| static IIgnite | Start () |
| | Starts Ignite with default configuration. By default this method will use Ignite configuration defined in {IGNITE_HOME}/config/default-config.xml configuration file. If such file is not found, then all system defaults will be used. More...
|
| |
| static IIgnite | Start (string springCfgPath) |
| | Starts all grids specified within given Spring XML configuration file. If Ignite with given name is already started, then exception is thrown. In this case all instances that may have been started so far will be stopped too. More...
|
| |
| static IIgnite | StartFromApplicationConfiguration () |
| | Reads IgniteConfiguration from first IgniteConfigurationSection in the application configuration and starts Ignite. More...
|
| |
| static IIgnite | StartFromApplicationConfiguration (string sectionName) |
| | Reads IgniteConfiguration from application configuration IgniteConfigurationSection with specified name and starts Ignite. More...
|
| |
| static IIgnite | StartFromApplicationConfiguration (string sectionName, string configPath) |
| | Reads IgniteConfiguration from application configuration IgniteConfigurationSection with specified name and starts Ignite. More...
|
| |
| static unsafe IIgnite | Start (IgniteConfiguration cfg) |
| | Starts Ignite with given configuration. More...
|
| |
| static IIgnite | GetIgnite (string name) |
| | Gets a named Ignite instance. If Ignite name is null or empty string, then default no-name Ignite will be returned. Note that caller of this method should not assume that it will return the same instance every time. More...
|
| |
| static IIgnite | GetIgnite () |
| | Gets an instance of default no-name grid. Note that caller of this method should not assume that it will return the same instance every time. More...
|
| |
| static IIgnite | TryGetIgnite (string name) |
| | Gets a named Ignite instance, or null if none found. If Ignite name is null or empty string, then default no-name Ignite will be returned. Note that caller of this method should not assume that it will return the same instance every time. Note that single process can run multiple Ignite instances and every Ignite instance (and its node) can belong to a different grid. Ignite name defines what grid a particular Ignite instance (and correspondingly its node) belongs to. More...
|
| |
| static IIgnite | TryGetIgnite () |
| | Gets an instance of default no-name grid, or null if none found. Note that caller of this method should not assume that it will return the same instance every time. More...
|
| |
| static bool | Stop (string name, bool cancel) |
| | Stops named grid. If cancel flag is set to true then all jobs currently executing on local node will be interrupted. If grid name is null , then default no-name Ignite will be stopped. More...
|
| |
| static void | StopAll (bool cancel) |
| | Stops all started grids. If cancel flag is set to true then all jobs currently executing on local node will be interrupted. More...
|
| |
|
| static bool | ClientMode [get, set] |
| | Gets or sets a value indicating whether Ignite should be started in client mode. Client nodes cannot hold data in caches. More...
|
| |
| static IIgnite Apache.Ignite.Core.Ignition.GetIgnite |
( |
string |
name | ) |
|
|
static |
Note that single process can run multiple Ignite instances and every Ignite instance (and its node) can belong to a different grid. Ignite name defines what grid a particular Ignite instance (and correspondingly its node) belongs to.
- Parameters
-
| name | Ignite name to which requested Ignite instance belongs. If null , then Ignite instance belonging to a default no-name Ignite will be returned. |
- Returns
- An instance of named grid.
- Exceptions
-
| IgniteException | When there is no Ignite instance with specified name. |
| static IIgnite Apache.Ignite.Core.Ignition.GetIgnite |
( |
| ) |
|
|
static |
- Returns
- An instance of default no-name grid.
- Exceptions
-
| IgniteException | When there is no Ignite instance with specified name. |
| static IIgnite Apache.Ignite.Core.Ignition.Start |
( |
| ) |
|
|
static |
| static IIgnite Apache.Ignite.Core.Ignition.Start |
( |
string |
springCfgPath | ) |
|
|
static |
- Parameters
-
| springCfgPath | Spring XML configuration file path or URL. Note, that the path can be absolute or relative to IGNITE_HOME. |
- Returns
- Started Ignite. If Spring configuration contains multiple Ignite instances, then the 1st found instance is returned.
| static IIgnite Apache.Ignite.Core.Ignition.StartFromApplicationConfiguration |
( |
| ) |
|
|
static |
| static IIgnite Apache.Ignite.Core.Ignition.StartFromApplicationConfiguration |
( |
string |
sectionName | ) |
|
|
static |
- Parameters
-
| sectionName | Name of the section. |
- Returns
- Started Ignite.
| static IIgnite Apache.Ignite.Core.Ignition.StartFromApplicationConfiguration |
( |
string |
sectionName, |
|
|
string |
configPath |
|
) |
| |
|
static |
- Parameters
-
| sectionName | Name of the section. |
| configPath | Path to the configuration file. |
- Returns
- Started Ignite.
| static bool Apache.Ignite.Core.Ignition.Stop |
( |
string |
name, |
|
|
bool |
cancel |
|
) |
| |
|
static |
- Parameters
-
| name | Grid name. If null , then default no-name Ignite will be stopped. |
| cancel | If true then all jobs currently executing will be cancelled by calling ComputeJob.cancel method. |
- Returns
true
if named Ignite instance was indeed found and stopped, false
othwerwise (the instance with given name
was not found).
| static void Apache.Ignite.Core.Ignition.StopAll |
( |
bool |
cancel | ) |
|
|
static |
- Parameters
-
| cancel | If true then all jobs currently executing will be cancelled by calling ComputeJob.Cancel() method. |
| static IIgnite Apache.Ignite.Core.Ignition.TryGetIgnite |
( |
string |
name | ) |
|
|
static |
- Parameters
-
| name | Ignite name to which requested Ignite instance belongs. If null , then Ignite instance belonging to a default no-name Ignite will be returned. |
- Returns
- An instance of named grid, or null.
| static IIgnite Apache.Ignite.Core.Ignition.TryGetIgnite |
( |
| ) |
|
|
static |
- Returns
- An instance of default no-name grid, or null.
| bool Apache.Ignite.Core.Ignition.ClientMode |
|
staticgetset |


Effective Date: March 6, 2020
Welcome to HuiGram Labs, Inc ("Company", "we", "us" or "our"), a mobile technology company specializing in computer vision and deep learning related products.
HuiGram, this app, runs on devices, and will never cast an internet connection. We will never collect your any information.
Contact: Feng Shi, +086-18621699994
Address: Room 27-402, No.88 Wanyuan Rd., Dianshanhu Twon, The city of Kunshan, Jiangsu province, China.
Email: redpark@qq.com


{% autoescape true %}
Access
Admin
> Access
Notes:
Paths are unix-style, that is gs://bucket/some/directory becomes /bucket/some/directory
The longest prefix match by a list item on a path is used to grant or deny access
{% for group in access|dictsort %}
{{group[0]}}
Allow:
Path:
{% for item in group[1] %}
{% if item.access %}Allow{% else %}Deny{% endif %} {{item.path}}
{% endfor %} {% endfor %}
{% endautoescape %}


What would you pay to get 200+ minnows access to a 20,000 SP account they can auto curate from a Discord chatroom? Turns out it’s $100 SBD for the bots to get started and 80SBD/week for the delegation!
The back story
Once I became a Witness and set my sites on helping grow this community and support minnows it became fairly clear what I had to do. Minnows needed a place to congregate to learn the ropes, socialize, and help one another learn the tricks and tools of successful people on the platform. They also needed a steady supply of upvotes, resteems, and follows to help them get on their way.
I’ve been able to pass our several hundred SBD and many resteems to Minnow Support Project Weekly Resteem contest winners. That’s been a great start, but it isn’t quite enough. Without some post rewards to start it’s awfully hard to capture anyone’s attention. It became clear that I need some SP to help my Discord crew.
I’ve seen a few people with delegation around here, but I needed my own source of SP. So, where could I turn? What I needed was a loanshark…
Neoxian
I met @neoxian when I was initially vote begging. I told him my platform of Peace, Abudance, and Liberty, Growth hack this place, and support minnows. He came on board to help me, and I liked his style so I followed him.
Well, he started posting how he was lending SBD…. Something inside of me clicked and I knew I should be working with him… It wasn’t just that he had steem to share it was the fact that he was another witness to involve in this project and I liked some of the other things he does.  Usually it’s one and done… but @neoxian has a way and got some folks reinstated with a rep of 1 and a hard climb ahead of them.
The deal
So, while walking back home from the train at midnight after a successful pathfinder round in the city I figured I’d reach out and we came to terms.
120 SBD to start for 20k SP delegation for 1 week.
80SBD per week until HF 19 is implemented and we renegotiate based on real world effect.
We inked it on the blockchain before I even made it home.
The results
If you’re in the PALnet Discord channel you have a publicly accessible bot that you operate that will allow you control over the community account @minnowsupport to upvote posts. Power is set to 15%, and you have a curation trail of about 50 people to help your posts along. This is day 3. We are nearing in on 300 people that have been to the Discord room. Lots of good discussion, fun people, and a who set of people called greeters with their name in orange who can help get you situated.
This is a really fun community and I’m having a blast being a witness.
Join the Discord Channel- https://discord.gg/HYj4yvw
If you like this project please join us
Upvote, follow, resteem, join the discord, and come hang out. Hope to see you there!
Please vote for my witness
This page is synchronized from the post: ‘Delegation Deals at Midnight- The Professor and the Loan shark meet & come to terms for the Minnow Support Project.’


{% extends "base/base.html" %} {% load mathfilters %} {% block content %}
Use 4242 4242 4242 4242 as your card
The expiration is any day in the future, the CVC is any 3 digit number
You will pay ${{ amount }}


Welcome to php-opencloud!¶
Installation¶
You must install this library through Composer:
composer require rackspace/php-opencloud
If you do not have Composer installed, please consult the official docs.
Once you have installed the library, you will need to load Composer’s autoloader (which registers all the required namespaces). To do this, place the following line of PHP code at the top of your application’s PHP files:
require 'vendor/autoload.php';
This assumes your application’s PHP files are located in the same folder as vendor/. If your files are located elsewhere, please supply the path to vendor/autoload.php in the require statement above.
Read the Getting Started with OpenStack or Getting Started with Rackspace to help you get started with basic Compute operations.
Note
If you are running PHP 5.3, please see our Using the SDK with PHP v5.3 guide.
Services¶
Usage tips¶
Help and support¶
If you have specific problems or bugs with this SDK, please file an issue on our official Github. We also have a mailing list, so feel free to join to keep up to date with all the latest changes and announcements to the library.
For general feedback and support requests, send an email to<EMAIL_ADDRESS>You can also find assistance via IRC on #rackspace at freenode.net.
Contributing¶
If you’d like to contribute to the project, or require help running the unit/acceptance tests, please view the contributing guidelines.