コード例 #1
0
 public function postPostEdit($request, $response, $args)
 {
     if (!$this->app->auth()->isLoggedIn()) {
         $response = new RedirectResponse('/unauthorised');
         return $response;
     }
     $template = $this->twig->loadTemplate('post/edit.twig');
     $validator = new \Valitron\Validator(array('title' => $this->app->input()->post('title'), 'body' => $this->app->input()->post('body'), 'status' => $this->app->input()->post('status')));
     $validator->rule('required', ['title', 'body', 'status']);
     $validator->rule('integer', ['status']);
     if ($validator->validate()) {
         $post = \Model::factory('\\App\\Models\\Post')->find_one($args['id']);
         if ($post) {
             $post->title = $this->app->input()->post('title');
             $post->body = $this->app->input()->post('body');
             $post->updated_at = date('Y-m-d H:i:s');
             $post->status = $this->app->input()->post('status');
             if ($post->save()) {
                 $response = new RedirectResponse('/');
                 return $response;
             } else {
                 $response->setContent($template->render(['errors' => [['Unable to edit post']], 'input' => $this->app->input()->all('post')]));
             }
         } else {
             $response->setContent($template->render(['errors' => $validator->errors(), 'input' => $this->app->input()->all('post')]));
             return $response;
         }
     } else {
         $response->setContent($template->render(['errors' => $validator->errors(), 'input' => $this->app->input()->all('post')]));
         return $response;
     }
 }
コード例 #2
0
    public function signin() {
        $email = $this->f3->get('POST.email');
        $password = $this->f3->get('POST.password');

        $v = new Valitron\Validator(array('Email' => $email, 'Password' => $password));
        $v->rule('required', ['Email', 'Password']);
        $v->rule('email', 'Email');

        if ($v->validate()) {
            $account = new Account($this->db);
            $pwd = md5($password);
            $acc = $account->select("*", "email='$email' and password='******'");
            if ($acc) {
                $this->f3->set('SESSION.acc', $acc);
                $acc = $acc[0];
                $acc['lastlogin'] = date('Y-m-d H:i:s');
                $account->update($acc,'id='.$acc['id']);
                $this->f3->reroute('/dashboard');
            } else {
                $this->f3->set('email', $email);
                $this->f3->set('errors', array(array('Login fail, wrong username or password')));
                echo Template::instance()->render('index.html');
            }
        } else {
            $this->f3->set('email', $email);
            $this->f3->set('errors', $v->errors());
            echo Template::instance()->render('index.html');
        }
    }
コード例 #3
0
    public function save(){
        $name = $this->f3->get('POST.name');
        $email = $this->f3->get('POST.email');
        $comments = $this->f3->get('POST.comments');

        $v = new Valitron\Validator(array('Name' => $name,'Email'=>$email,'Comments'=>$comments));
        $v->rule('required', ['Name','Email','Comments']);
        $v->rule('email',[Email]);

        if ($v->validate()) {
            $contact = new Contact($this->db);
            $data = array(
                'name' => $name,
                'email' => $email,
                'comments' => $comments,
                'contact_date' => date('Y-m-d H:i:s')
            );
            $contact->insert($data);
            $response = array(
                'status' => true,
                'message' => 'Your message saved!'
            );
        }else{
            $response = array(
                'status' => false,
                'errors' => $v->errors()
            );
        }
        echo json_encode($response);
    }
コード例 #4
0
ファイル: profile.php プロジェクト: jvillasante/wildvapor
function validate(&$data)
{
    $v = new \Valitron\Validator($data);
    if (!empty($data['first_name'])) {
        $v->rule('regex', 'first_name', '/^[A-Z \'.-]{2,30}$/i');
    }
    if (!empty($data['last_name'])) {
        $v->rule('regex', 'last_name', '/^[A-Z \'.-]{2,40}$/i');
    }
    if (!empty($data['address1'])) {
        $v->rule('regex', 'address1', '/^[A-Z0-9 \',.#-]{2,80}$/i');
    }
    if (!empty($data['address2'])) {
        $v->rule('regex', 'address2', '/^[A-Z0-9 \',.#-]{2,80}$/i');
    }
    if (!empty($data['city'])) {
        $v->rule('regex', 'city', '/^[A-Z \'.-]{2,60}$/i');
    }
    if (!empty($data['zip_code'])) {
        $v->rule('regex', 'zip_code', '/^(\\d{5}$)|(^\\d{5}-\\d{4})$/');
    }
    if (!empty($data['phone'])) {
        $v->rule('regex', 'phone', '/\\(?\\d{3}\\)?[-\\s.]?\\d{3}[-\\s.]\\d{4}/x');
    }
    if (!empty($data['state'])) {
        $v->rule('regex', 'state', '/^[A-Z]{2}$/');
        $v->rule('max', 'state', 2);
    }
    if ($v->validate()) {
        return null;
    } else {
        return $v->errors();
    }
}
コード例 #5
0
ファイル: register.php プロジェクト: jvillasante/wildvapor
function validate($data)
{
    $phone_regex = "/^\n        (?:                                 # Area Code\n            (?:\n                \\(                          # Open Parentheses\n                (?=\\d{3}\\))                 # Lookahead.  Only if we have 3 digits and a closing parentheses\n            )?\n            (\\d{3})                         # 3 Digit area code\n            (?:\n                (?<=\\(\\d{3})                # Closing Parentheses.  Lookbehind.\n                \\)                          # Only if we have an open parentheses and 3 digits\n            )?\n            [\\s.\\/-]?                       # Optional Space Delimeter\n        )?\n        (\\d{3})                             # 3 Digits\n        [\\s\\.\\/-]?                          # Optional Space Delimeter\n        (\\d{4})\\s?                          # 4 Digits and an Optional following Space\n        (?:                                 # Extension\n            (?:                             # Lets look for some variation of 'extension'\n                (?:\n                    (?:e|x|ex|ext)\\.?       # First, abbreviations, with an optional following period\n                |\n                    extension               # Now just the whole word\n                )\n                \\s?                         # Optionsal Following Space\n            )\n            (?=\\d+)                         # This is the Lookahead.  Only accept that previous section IF it's followed by some digits.\n            (\\d+)                           # Now grab the actual digits (the lookahead doesn't grab them)\n        )?                                  # The Extension is Optional\n        \$/x";
    // /x modifier allows the expanded and commented regex
    $v = new \Valitron\Validator($data);
    $v->rule('required', 'first_name')->message('First Name is required.');
    $v->rule('required', 'last_name')->message('Last Name is required.');
    $v->rule('required', 'email')->message('Email Addres is required.');
    $v->rule('required', 'username')->message('Username is required.');
    $v->rule('required', 'password')->message('Password is required.');
    $v->rule('required', 'password_confirmation')->message('Password Confirmation is required.');
    $v->rule('required', 'terms')->message('You must accept our terms of service and privacy policy.');
    $v->rule('regex', 'first_name', '/^[A-Z \'.-]{2,30}$/i')->message('First Name contains invalid characters.');
    $v->rule('regex', 'last_name', '/^[A-Z \'.-]{2,40}$/i')->message('Last Name contains invalid characters.');
    $v->rule('email', 'email')->message('Email Address is not a valid email address.');
    $v->rule('max', 'email', 80)->message('Email Address must be less than 80 characters.');
    $v->rule('regex', 'phone', $phone_regex)->message('Phone Number contains invalid characters.');
    $v->rule('regex', 'username', '/^[A-Z0-9]{2,30}$/i')->message('Username contains invalid characters.');
    $v->rule('regex', 'password', '/^\\S*(?=\\S{6,})(?=\\S*[a-z])(?=\\S*[A-Z])(?=\\S*[\\d])(?=\\S*[\\W]*)\\S*$/')->message('Password contains invalid characters.');
    $v->rule('equals', 'password_confirmation', 'password')->message('Password Confirmation be the same as Password.');
    $v->rule('regex', 'address1', '/^[A-Z0-9 \',.#-]{2,80}$/i')->message('Address1 contains invalid characters.');
    $v->rule('regex', 'address2', '/^[A-Z0-9 \',.#-]{2,80}$/i')->message('Address2 contains invalid characters.');
    $v->rule('regex', 'city', '/^[A-Z \'.-]{2,60}$/i')->message('City contains invalid characters.');
    $v->rule('regex', 'state', '/^[A-Z]{2}$/')->message('State contains invalid characters.');
    $v->rule('regex', 'zip_code', '/^(\\d{5}$)|(^\\d{5}-\\d{4})$/')->message('Zip Code contains invalid characters.');
    $v->rule('accepted', 'terms')->message('You must read and agree to our Privacy Policy.');
    if ($v->validate()) {
        return null;
    } else {
        return $v->errors();
    }
}
コード例 #6
0
ファイル: users.php プロジェクト: azfarahmed/easyphp
 public function update($id)
 {
     if (!empty($_POST)) {
         $data['post'] = $_POST;
         //enabling validation
         $v = new Valitron\Validator($_POST);
         // Input array
         $v->rule('required', 'username');
         $v->rule('required', 'name');
         $v->rule('required', 'email');
         $v->rule('required', 'location');
         $v->rule('required', 'gender');
         $v->rule('email', 'email');
         if ($v->validate()) {
             $data['result'] = $this->model->updateUser($_POST, "users", $id);
         } else {
             // Errors
             $data['errors'] = $v->errors();
         }
     } else {
         $data['post'] = $this->model->getUserById($id);
     }
     $data['user_id'] = $id;
     $data['ep_title'] = "Update User";
     //setting title name
     $data['view_page'] = "users/update.php";
     //controller view page
     $data['ep_header'] = $GLOBALS['ep_header'];
     //header view (Also Ex: "header.php")
     $data['ep_footer'] = $GLOBALS['ep_footer'];
     //footer view
     return $data;
 }
コード例 #7
0
 public function createAction()
 {
     $v = new Valitron\Validator($_POST);
     $v->rule('required', array('title', 'category_id', 'price', 'quantity', 'brand', 'description'));
     $v->rule('numeric', 'price');
     $v->rule('integer', 'quantity');
     if ($v->validate()) {
         $store_settings_result = $this->app->db->query("SELECT payment_profile, return_profile, shipping_profile, out_of_stock_control, get_it_fast, category_prefill,\n                category_mapping, condition_type, country_code_type, currency_code, dispatch_time, optimal_picturesize,\n                listing_duration, listing_type, item_location, postal_code, store_name, county,\n                street, ebay_website, shippingservice_priority, shipping_service, shippingservice_cost, shippingservice_additionalcost\n                FROM store_settings WHERE id = 1");
         $store_settings = $store_settings_result->fetch_object();
         $response = $this->app->ebay->addItem($store_settings, $_POST);
         if ($response->Ack == 'Success') {
             if ($query = $this->app->db->prepare("INSERT INTO products SET title = ?, category_id = ?, price = ?, qty = ?, brand = ?, description = ?")) {
                 $title = $_POST['title'];
                 $category_id = $_POST['category_id'];
                 $price = $_POST['price'];
                 $qty = $_POST['quantity'];
                 $brand = $_POST['brand'];
                 $description = $_POST['description'];
                 $query->bind_param("ssdiss", $title, $category_id, $price, $qty, $brand, $description);
                 $query->execute();
                 $this->app->flash('message', array('type' => 'success', 'text' => 'Product was created!'));
             }
         } else {
             $long_message = json_decode(json_encode($response->Errors->LongMessage), true);
             $this->app->flash('message', array('type' => 'danger', 'text' => $long_message[0]));
         }
     } else {
         $this->app->flash('form', $_POST);
         $this->app->flash('message', array('type' => 'danger', 'text' => 'Please fix the following errors', 'data' => $v->errors()));
     }
     $this->app->redirect('/tester/ebay_trading_api/products/new');
 }
コード例 #8
0
 /**
  * Update User Configuration
  *
  * @param string $username
  * @param string $password0
  * @param string $password1
  * @param string $email
  * @param string $language
  * @param optional string $firstname
  * @param optional string $lastname
  *
  * @author Nikita Rousseau
  */
 public function updateUserConfig($username, $password0, $password1, $email, $language, $firstname = '', $lastname = '')
 {
     $form = array('username' => $username, 'password0' => $password0, 'password1' => $password1, 'email' => $email, 'language' => $language);
     $errors = array();
     // array to hold validation errors
     $data = array();
     // array to pass back data
     $dbh = Core_DBH::getDBH();
     // Get Database Handle
     // Get languages
     $languages = parse_ini_file(CONF_LANG_INI);
     $languages = array_flip(array_values($languages));
     // validate the variables ======================================================
     $v = new Valitron\Validator($form);
     $rules = ['required' => [['username'], ['password0'], ['password1'], ['email'], ['language']], 'alphaNum' => [['username']], 'lengthMin' => [['username', 4], ['password0', 8]], 'equals' => [['password0', 'password1']], 'email' => [['email']], 'in' => [['language', $languages]]];
     $labels = array('username' => 'Username', 'password0' => 'Password', 'password1' => 'Confirmation Password', 'email' => 'Email', 'language' => 'Language');
     $v->rules($rules);
     $v->labels($labels);
     $v->validate();
     $errors = $v->errors();
     // Apply the form ==============================================================
     if (empty($errors)) {
         // Database update
         $db_data['username'] = $form['username'];
         $db_data['password'] = Core_AuthService::getHash($form['password0']);
         $db_data['email'] = $form['email'];
         $db_data['lang'] = $form['language'];
         if (!empty($firstname)) {
             $db_data['firstname'] = $firstname;
         }
         if (!empty($lastname)) {
             $db_data['lastname'] = $lastname;
         }
         $authService = Core_AuthService::getAuthService();
         $uid = Core_AuthService::getSessionInfo('ID');
         foreach ($db_data as $key => $value) {
             $sth = $dbh->prepare("\tUPDATE " . DB_PREFIX . "user\n\t\t\t\t\t\t\t\t\t\tSET " . $key . " = :" . $key . "\n\t\t\t\t\t\t\t\t\t\tWHERE user_id = '" . $uid . "';");
             $sth->bindParam(':' . $key, $value);
             $sth->execute();
         }
         // Reload Session
         $authService->rmSessionInfo();
         $authService->setSessionInfo($uid, $db_data['username'], $db_data['firstname'], $db_data['lastname'], $db_data['lang'], BGP_USER_TEMPLATE);
         $authService->setSessionPerms();
         $this->rmCookie('LANG');
     }
     // return a response ===========================================================
     // response if there are errors
     if (!empty($errors)) {
         // if there are items in our errors array, return those errors
         $data['success'] = false;
         $data['errors'] = $errors;
         $data['msgType'] = 'warning';
         $data['msg'] = T_('Bad Settings!');
     } else {
         $data['success'] = true;
     }
     // return all our data to an AJAX call
     return $data;
 }
コード例 #9
0
 public static function update($id)
 {
     $params = $_POST;
     $v = new Valitron\Validator($params);
     $v->rule('required', 'site_name');
     $v->rule('lengthMin', 'site_name', 5);
     $v->rule('numeric', 'latitude');
     $v->rule('required', 'latitude');
     $v->rule('lengthMin', 'latitude', 4);
     $v->rule('lengthMax', 'latitude', 7);
     $v->rule('numeric', 'latitude');
     $v->rule('required', 'longitude');
     $v->rule('lengthMin', 'longitude', 4);
     $v->rule('lengthMax', 'longitude', 7);
     $v->rule('numeric', 'longitude');
     $v->rule('required', 'area');
     $v->rule('required', 'tent');
     $v->rule('required', 'grade');
     $attributes = array('id' => $id, 'site_name' => $params['site_name'], 'latitude' => $params['latitude'], 'longitude' => $params['longitude'], 'area' => $params['area'], 'tent' => $params['tent'], 'grade' => $params['grade'], 'content' => $params['content']);
     if ($v->validate()) {
         $site = new Site($attributes);
         $site->update();
         Redirect::to('/site/show_site/' . $site->id, array('message' => 'Telttapaikkaa muokattu onnistuneesti!'));
     } else {
         View::make('site/show_site/' . $site->id . '/edit_site', array('errors' => $v->errors(), 'message' => 'Annetuissa tiedoissa puutteita tai virheitä', 'site' => $site));
     }
 }
コード例 #10
0
function validateSiteSettings(&$post)
{
    // Preprocess checkboxes
    realizeCheckbox('can_register', $post);
    realizeCheckbox('email_login', $post);
    realizeCheckbox('activation', $post);
    // Sanitize fields
    foreach ($post as $key => $value) {
        $post[$key] = htmlentities($value);
    }
    // Set up Valitron validator
    $v = new Valitron\Validator($post);
    // Add field rules
    $v->rule('required', 'website_name');
    $v->rule('lengthBetween', 'website_name', 1, 150)->message(lang("CONFIG_NAME_CHAR_LIMIT", array(1, 150)));
    $v->rule('required', 'website_url');
    $v->rule('lengthBetween', 'website_url', 1, 150)->message(lang("CONFIG_URL_CHAR_LIMIT", array(1, 150)));
    $v->rule('required', 'email');
    $v->rule('lengthBetween', 'email', 1, 150)->message(lang("CONFIG_EMAIL_CHAR_LIMIT", array(1, 150)));
    $v->rule('email', 'email')->message(lang("CONFIG_EMAIL_INVALID"));
    $v->rule('required', 'new_user_title');
    $v->rule('lengthBetween', 'new_user_title', 1, 150)->message(lang("CONFIG_TITLE_CHAR_LIMIT", array(1, 150)));
    $v->rule('required', 'resend_activation_threshold');
    $v->rule('min', 'resend_activation_threshold', 0)->message(lang("CONFIG_ACTIVATION_RESEND_RANGE", array(0, 72)));
    $v->rule('max', 'resend_activation_threshold', 72)->message(lang("CONFIG_ACTIVATION_RESEND_RANGE", array(0, 72)));
    $v->rule('required', 'token_timeout');
    $v->rule('min', 'token_timeout', 0);
    $v->rule('max', 'token_timeout', 72);
    $v->rule('required', 'language');
    $v->rule('lengthBetween', 'language', 1, 150)->message(lang("CONFIG_LANGUAGE_CHAR_LIMIT", array(1, 150)));
    // Validate!
    $v->validate();
    return $v->errors();
}
コード例 #11
0
ファイル: AbstractAction.php プロジェクト: superbull/super
 protected function validate($queryParams)
 {
     $v = new \Valitron\Validator($queryParams);
     $v->rules($this->rules);
     if (!$v->validate()) {
         throw new ValidationFailed($v->errors());
     }
 }
コード例 #12
0
function validate($data)
{
    $v = new \Valitron\Validator($data);
    $v->rule('required', 'email')->message('Email is required');
    $v->rule('email', 'email')->message('Email Address is not a valid email address.');
    if ($v->validate()) {
        return null;
    } else {
        return $v->errors();
    }
}
コード例 #13
0
ファイル: contact.php プロジェクト: jvillasante/wildvapor
function validate($data)
{
    $v = new \Valitron\Validator($data);
    $v->rule('required', ['name', 'email', 'message']);
    $v->rule('email', 'email');
    $v->rule('max', 'email', 80);
    if ($v->validate()) {
        return null;
    } else {
        return $v->errors();
    }
}
コード例 #14
0
 public function postContact($request, $response, $args)
 {
     $template = $this->twig->loadTemplate('contact.twig');
     $validator = new \Valitron\Validator(array('name' => $this->app->input()->post('name'), 'email' => $this->app->input()->post('email'), 'message' => $this->app->input()->post('message')));
     $validator->rule('required', ['name', 'email', 'message']);
     $validator->rule('email', 'email');
     if ($validator->validate()) {
         die('I would send an email or store in a db now');
     } else {
         $response->setContent($template->render(['errors' => $validator->errors(), 'input' => $this->app->input()->all('post')]));
         return $response;
     }
 }
コード例 #15
0
function validate($array, $rules)
{
    require_once $_SERVER['DOCUMENT_ROOT'] . '/vendor/autoload.php';
    $v = new Valitron\Validator($array);
    // Input array from $_POST/$_GET/Custom array
    $v->rules($rules);
    $v->labels(array('fname' => 'First Name', 'lname' => 'Last Name', 'phone' => 'Phone Number', 'email' => 'Email address', 'dob' => 'Date of Birth', 'streetAddress' => 'Street Address'));
    if (!$v->validate()) {
        foreach ($v->errors() as $field => $messages) {
            echo implode(', ', $messages) . ". ";
        }
        die;
    }
}
コード例 #16
0
function validate($data)
{
    $v = new \Valitron\Validator($data);
    $v->rule('required', 'password')->message('Password is required.');
    $v->rule('required', 'new_password')->message('New Password is required.');
    $v->rule('required', 'new_password_confirmation')->message('New Password Confirmation is required.');
    $v->rule('regex', 'new_password', '/^\\S*(?=\\S{6,})(?=\\S*[a-z])(?=\\S*[A-Z])(?=\\S*[\\d])(?=\\S*[\\W]*)\\S*$/')->message('New Password contains invalid characters.');
    $v->rule('equals', 'new_password_confirmation', 'new_password')->message('New Password Confirmation must match with New Password');
    if ($v->validate()) {
        return null;
    } else {
        return $v->errors();
    }
}
コード例 #17
0
 public static function save()
 {
     $params = $_POST;
     $v = new Valitron\Validator($params);
     $v->rule('required', 'content');
     $v->rule('lengthMin', 'content', 1);
     $v->rule('required', 'site-id');
     $v->rule('numeric', 'site-id');
     if ($v->validate()) {
         $kommentti = new Kommentti(array('comment_content' => $params['content'], 'site_id' => $params['site-id'], 'kayttaja_id' => $_SESSION['user']));
         $kommentti->save();
         Redirect::to('/site/show_site/' . $params['site-id'], array('message' => 'Kommentti lisätty'));
     } else {
         $site = Site::find($params['site-id']);
         $kommentit = Kommentti::getAllComments($params['site-id']);
         View::make('site/show_site.html', array('site' => $site, 'kommentit' => $kommentit, 'errors' => $v->errors()));
     }
 }
コード例 #18
0
ファイル: review.php プロジェクト: jvillasante/wildvapor
function validate($data)
{
    $v = new \Valitron\Validator($data);
    $v->rule('required', 'name')->message('Your Name is required.');
    $v->rule('required', 'email')->message('Your Email is required.');
    $v->rule('required', 'rating')->message('Your Rating is required.');
    $v->rule('required', 'message')->message('Your Review is required.');
    $v->rule('email', 'email')->message('Email Address is not a valid email address.');
    $v->rule('max', 'email', 80)->message('Email Address must be less than 80 characters.');
    $v->rule('integer', 'rating')->message('Your rating must be a number');
    $v->rule('min', 'rating', 1)->message('Your rating min value must be 1');
    $v->rule('max', 'rating', 5)->message('Your rating max value must be 5');
    if ($v->validate()) {
        return null;
    } else {
        return $v->errors();
    }
}
コード例 #19
0
 public static function save()
 {
     $params = $_POST;
     $v = new Valitron\Validator($params);
     $v->rule('required', 'reader_name');
     $v->rule('lengthMin', 'reader_name', 3);
     $v->rule('lengthMax', 'reader_name', 15);
     $v->rule('required', 'reader_password');
     $v->rule('lengthMin', 'reader_password', 4);
     $v->rule('lengthMax', 'reader_password', 15);
     if ($v->validate()) {
         $reader = new Reader(array('reader_name' => $params['reader_name'], 'reader_password' => $params['reader_password']));
         $reader->save();
         Redirect::to('/login', array('message' => 'Voit nyt kirjautua sisään uusilla tunnuksillasi.'));
     } else {
         View::make('reader/new_reader.html', array('errors' => $v->errors(), 'message' => 'Annetuissa tiedoissa virheitä tai puutteita.'));
     }
 }
コード例 #20
0
 public function updateAction()
 {
     $v = new Valitron\Validator($_POST);
     $v->rule('required', array('store_name', 'county', 'street', 'country_code_type', 'ebay_website', 'postal_code', 'currency_code', 'item_location', 'dispatch_time', 'listing_duration', 'listing_type', 'condition_type', 'PAYMENT', 'RETURN_POLICY', 'SHIPPING', 'shipping_service', 'shippingservice_priority', 'shippingservice_cost', 'shippingservice_additionalcost'));
     if ($v->validate()) {
         $id = 1;
         $store_name = $_POST['store_name'];
         $street = $_POST['street'];
         $county = $_POST['county'];
         $country_code_type = $_POST['country_code_type'];
         $ebay_website = $_POST['ebay_website'];
         $postal_code = $_POST['postal_code'];
         $category_mapping = !empty($_POST['category_mapping']) ? 1 : 0;
         $category_prefill = !empty($_POST['category_prefill']) ? 1 : 0;
         $optimal_picturesize = !empty($_POST['optimal_picturesize']) ? 1 : 0;
         $out_of_stock_control = !empty($_POST['out_of_stock_control']) ? 1 : 0;
         $get_it_fast = !empty($_POST['get_it_fast']) ? 1 : 0;
         $include_prefilled = !empty($_POST['include_prefilled']) ? 1 : 0;
         $currency_code = $_POST['currency_code'];
         $item_location = $_POST['item_location'];
         $dispatch_time = $_POST['dispatch_time'];
         $listing_duration = $_POST['listing_duration'];
         $listing_type = $_POST['listing_type'];
         $condition_type = $_POST['condition_type'];
         $payment_policy = $_POST['PAYMENT'];
         $return_policy = $_POST['RETURN_POLICY'];
         $shipping_policy = $_POST['SHIPPING'];
         $shipping_service = $_POST['shipping_service'];
         $shippingservice_priority = $_POST['shippingservice_priority'];
         $shippingservice_cost = $_POST['shippingservice_cost'];
         $shippingservice_additionalcost = $_POST['shippingservice_additionalcost'];
         if ($query = $this->app->db->prepare("UPDATE store_settings SET store_name = ?, county = ?, street = ?, \n            \tcountry_code_type = ?, ebay_website = ?, postal_code = ?, category_mapping = ?, category_prefill = ?, \n            \tcurrency_code = ?, item_location = ?, dispatch_time = ?, listing_duration = ?, listing_type = ?, \n            \tcondition_type = ?, optimal_picturesize = ?, out_of_stock_control = ?, get_it_fast = ?, include_prefilled = ?, \n            \tshipping_profile = ?, return_profile = ?, payment_profile = ?, shipping_service = ?,\n            \tshippingservice_priority = ?, shippingservice_cost = ?, shippingservice_additionalcost = ? \n            \tWHERE id = ?")) {
             $query->bind_param("ssssssiississsiiiissssiddi", $store_name, $county, $street, $country_code_type, $ebay_website, $postal_code, $category_mapping, $category_prefill, $currency_code, $item_location, $dispatch_time, $listing_duration, $listing_type, $condition_type, $optimal_picturesize, $out_of_stock_control, $get_it_fast, $include_prefilled, $shipping_policy, $return_policy, $payment_policy, $shipping_service, $shippingservice_priority, $shippingservice_cost, $shippingservice_additionalcost, $id);
             $query->execute();
             $this->app->flash('message', array('type' => 'success', 'text' => 'Settings was updated!'));
             $this->app->redirect('/tester/ebay_trading_api/settings');
         }
     } else {
         $this->app->flash('form', $_POST);
         $this->app->flash('message', array('type' => 'danger', 'text' => 'Please fix the following errors', 'data' => $v->errors()));
         $this->app->redirect('/tester/ebay_trading_api/settings');
     }
 }
コード例 #21
0
 public static function update($aines_id)
 {
     $params = $_POST;
     $v = new Valitron\Validator($_POST);
     $v->rule('required', 'nimi')->message('{field} pitää antaa')->label('Nimi');
     $v->rule('required', 'alkpitoisuus')->message('{field} pitää antaa')->label('Alkoholipitoisuus');
     $v->rule('lengthMax', 'nimi', 50)->message('{field} ei saa olla yli 50 merkkiä pitkä')->label('Nimi');
     $v->rule('numeric', 'alkpitoisuus')->message('{field} pitää olla numeerinen kokonaisluku tai desimaaliluku erotettuna pisteellä');
     $v->rule('min', 'alkpitoisuus', 0)->message('{field} pitää olla 0-100')->label('Alkoholipitoisuus');
     $v->rule('max', 'alkpitoisuus', 100)->message('{field} pitää olla 0-100')->label('Alkoholipitoisuus');
     $aines = new Aines(array('nimi' => $params['nimi'], 'alkpitoisuus' => $params['alkpitoisuus']));
     if ($v->validate()) {
         $aines->update($aines_id);
         Redirect::to('/ingredients/' . $aines->aines_id, array('message' => 'Ainesta muokattu onnistuneesti'));
     } else {
         $aines->aines_id = $aines_id;
         View::make('ingredients/edit_ingredient.html', array('errors' => $v->errors(), 'attributes' => $aines));
     }
 }
コード例 #22
0
 public function postLogin($request, $response, $args)
 {
     $template = $this->twig->loadTemplate('login.twig');
     $validator = new \Valitron\Validator(array('email' => $this->app->input()->post('email'), 'password' => $this->app->input()->post('password')));
     $validator->rule('required', ['email', 'password']);
     $validator->rule('email', 'email');
     $validator->rule('lengthMin', 'password', 6);
     if ($validator->validate()) {
         if ($this->app->auth()->login($this->app->input()->post('email'), $this->app->input()->post('password'))) {
             $response = new RedirectResponse('/');
             return $response;
         } else {
             $response->setContent($template->render(['errors' => [['Unable to login, username and/or password may be incorrect']], 'input' => $this->app->input()->all('post')]));
             return $response;
         }
     } else {
         $response->setContent($template->render(['errors' => $validator->errors(), 'input' => $this->app->input()->all('post')]));
         return $response;
     }
 }
コード例 #23
0
 public static function store()
 {
     $params = $_POST;
     $v = new Valitron\Validator($params);
     $v->rule('required', 'book_name');
     $v->rule('lengthBetween', 'book_name', 1, 50);
     $v->rule('required', 'writer');
     $v->rule('lengthBetween', 'writer', 1, 50);
     $v->rule('required', 'publisher');
     $v->rule('lengthBetween', 'publisher', 1, 50);
     $v->rule('numeric', 'published');
     $v->rule('required', 'published');
     $v->rule('lengthBetween', 'published', 1, 4);
     if ($v->validate()) {
         $book = new Book(array('book_name' => $params['book_name'], 'writer' => $params['writer'], 'publisher' => $params['publisher'], 'published' => $params['published'], 'genre' => $params['genre'], 'reader_id' => $_SESSION['user']));
         $book->save();
         Kint::dump($params);
         Redirect::to('/book/' . $book->id, array('message' => 'Kirja on lisätty valikoimaasi.'));
     } else {
         View::make('book/new.html', array('errors' => $v->errors(), 'message' => 'Syötteissä virheitä, kokeile uudestaan.'));
     }
 }
コード例 #24
0
    $param2 = '?';
}
$conf_id = (int) getgpcvar("conf_id", "G");
$back_page = "system_config.php";
$cur_page = cur_page();
/////////////////////////////////////////////////////////////////
if (isset($_POST['title'])) {
    $conf_id = (int) getgpcvar("conf_id", "P");
    ##/ Validate Fields
    include_once '../../includes/form_validator.php';
    $form_v = new Valitron\Validator($_POST);
    $rules = ['required' => [['title'], ['c_value']], 'lengthMax' => [['title', 100], ['c_value', 50]]];
    $form_v->labels(array('title' => 'Title', 'c_value' => 'Value'));
    $form_v->rules($rules);
    $form_v->validate();
    $fv_errors = $form_v->errors();
    //var_dump("<pre>", $_POST, $fv_errors); die();
    #-
    if (!is_array($fv_errors) || empty($fv_errors) || count($fv_errors) <= 0) {
        if ($conf_id > 0) {
            ###/ Updating Database
            #/ system_config
            $sql_tb1 = "UPDATE system_config SET title='{$_POST['title']}', c_value='{$_POST['c_value']}'\n            WHERE id='{$conf_id}'";
            mysql_exec($sql_tb1, 'save');
            #-
            $_SESSION["CUSA_ADMIN_MSG_GLOBAL"] = array(true, 'The Site data has been successfully Updated');
            redirect_me("{$consts['DOC_ROOT_ADMIN']}{$cur_page}{$param2}&conf_id={$conf_id}", true);
            ////////////////-------
        } else {
        }
        //end Add ..
コード例 #25
0
ファイル: compareReport.php プロジェクト: mageni/projectrf
<?php

include '../main/config.php';
$db = new PDO("mysql:host={$dbhost};dbname={$dbname};charset=utf8", $dbuser, $dbpass);
$v = new Valitron\Validator($_POST);
$v->rule('accepted', ['isPlugName', 'isPlugFam', 'isPlugInfo', 'isPlugOut', 'isService', 'isCvss', 'isVulnPub', 'isExploit', 'isSynopsis', 'isDescription', 'isSolution', 'isSeeAlso', 'isCve', 'isBid', 'isOsvdb', 'isCert', 'isIava', 'isCWE', 'isMS', 'isSec', 'isEdb', 'isAffected', 'isNotes', 'cover']);
//$v->rule('numeric', ['scan_start1', 'scan_end1', 'scan_start2', 'scan_end2']);
//$v->rule('slug', ['agency1', 'agency2']);
//$v->rule('regex',['report_name1', 'report_name2'],'/[a-zA-Z]+/');
$v->rule('length', 1, ['critical', 'high', 'medium', 'low', 'info']);
$v->rule('integer', ['critical', 'high', 'medium', 'low', 'info']);
if (!$v->validate()) {
    print_r($v->errors());
    exit;
}
$critical = $_POST["critical"];
$high = $_POST["high"];
$medium = $_POST["medium"];
$low = $_POST["low"];
$info = $_POST["info"];
$sArray = array($critical, $high, $medium, $low, $info);
$sql = "CREATE temporary TABLE nessus_tmp_severity (severity VARCHAR(255), INDEX ndx_severity (severity))";
$stmt = $db->prepare($sql);
$stmt->execute();
foreach ($sArray as $s) {
    if ($s != "") {
        $sql = "INSERT INTO nessus_tmp_severity (severity) VALUES (?)";
        $stmt = $db->prepare($sql);
        $stmt->execute(array($s));
    }
}
コード例 #26
0
    $v->rule('required', array('questionCatName'));
    $v->labels(array('questionCatName' => "{$langTheField} {$langTitle}"));
    if ($v->validate()) {
        $q_cat_name = $_POST['questionCatName'];
        if (isset($_GET['modifyCat'])) {
            $q_cat_id = $_GET['modifyCat'];
            Database::get()->query("UPDATE exercise_question_cats SET question_cat_name = ?s " . "WHERE question_cat_id = ?d", $q_cat_name, $q_cat_id);
            Session::Messages($langEditCatSuccess, 'alert-success');
        } else {
            $PollActive = 1;
            $q_cat_id = Database::get()->query("INSERT INTO exercise_question_cats\n                        (question_cat_name, course_id)\n                        VALUES (?s, ?d)", $q_cat_name, $course_id)->lastInsertID;
            Session::Messages($langNewCatSuccess, 'alert-success');
        }
        redirect_to_home_page("modules/exercise/question_categories.php?course={$course_code}");
    } else {
        Session::flashPost()->Messages($langFormErrors)->Errors($v->errors());
        if (isset($_GET['modifyCat'])) {
            $cat_id = intval($_GET['modifyCat']);
            redirect_to_home_page("modules/exercise/question_categories.php?course={$course_code}&modifyCat={$cat_id}");
        } else {
            redirect_to_home_page("modules/exercise/question_categories.php??course={$course_code}&newCat=yes");
        }
    }
} elseif (isset($_GET['modifyCat']) || isset($_GET['newCat'])) {
    $pageName = isset($_GET['newCat']) ? $langNewCat : $langEditCat;
    $navigation = array(array("url" => "index.php?course={$course_code}", "name" => $langExercices), array("url" => "question_categories.php?course={$course_code}", "name" => $langQuestionCats));
    $form_action_url = "{$_SERVER['SCRIPT_NAME']}?course={$course_code}";
    $form_action_url .= isset($_GET['modifyCat']) ? "&modifyCat=" . intval($_GET['modifyCat']) : "&newCat=yes";
    if (isset($_GET['modifyCat'])) {
        $q_cat = Database::get()->querySingle("SELECT * FROM exercise_question_cats WHERE question_cat_id = ?d", $_GET['modifyCat']);
    }
コード例 #27
0
ファイル: csvReport.php プロジェクト: mageni/projectrf
    exit;
}
$nodeArray = $_POST["node"];
foreach ($nodeArray as $key => $value) {
    if ($value == "REMOVE") {
        unset($nodeArray[$key]);
    }
}
$sql = "CREATE temporary TABLE nexpose_tmp_nodes (node_address VARCHAR(255), node_device_id VARCHAR(255), INDEX ndx_node_address (node_address))";
$stmt = $db->prepare($sql);
$stmt->execute();
foreach ($nodeArray as $nA) {
    $v2 = new Valitron\Validator(array('node' => $nA));
    $v2->rule('regex', 'node', '/^([\\w.-])+$/i');
    if (!$v2->validate()) {
        print_r($v2->errors());
        exit;
    }
    $temp_nodes_array = explode(":", $nA);
    $sql = "INSERT INTO nexpose_tmp_nodes (node_address, node_device_id) VALUES (?,?)";
    $stmt = $db->prepare($sql);
    $stmt->execute(array($temp_nodes_array[0], $temp_nodes_array[1]));
}
$tags = $_POST["tags"];
$sql = "CREATE temporary TABLE nexpose_tmp_tags (tag VARCHAR(255), INDEX ndx_tag (tag))";
$stmt = $db->prepare($sql);
$stmt->execute();
foreach ($tags as $t) {
    $sql = "INSERT INTO nexpose_tmp_tags (tag) VALUES (?)";
    $stmt = $db->prepare($sql);
    $stmt->execute(array($t));
コード例 #28
0
ファイル: hiveconfig.php プロジェクト: rcrum003/HiveControl
        $doit = $conn->prepare("UPDATE hiveconfig SET hivename=?,hiveid=?,beekeeperid=?,yardid=?,city=?,state=?,country=?,latitude=?,longitude=?,version=?,timezone=?,share_hivetool=?,HT_USERNAME=?,HT_PASSWORD=?,HT_URL=?,GDD_BASE_TEMP=?,GDD_START_DATE=?,POWER=?,INTERNET=?,STATUS=?,COMPUTER=?,START_DATE=?,ZIP=? WHERE id=1");
        $doit->execute(array($hivename, $hiveid, $beekeeperid, $yardid, $city, $state, $country, $latitude, $longitude, $version, $timezone, $share_hivetool, $HT_USERNAME, $HT_PASSWORD, $HT_URL, $GDD_BASE_TEMP, $GDD_START_DATE, $POWER, $INTERNET, $STATUS, $COMPUTER, $START_DATE, $ZIP));
        sleep(3);
        // Refresh the fields in the form
        $sth = $conn->prepare("SELECT * FROM hiveconfig");
        $sth->execute();
        $result = $sth->fetch(PDO::FETCH_ASSOC);
        // Tell user it saved
        //echo '<div class="alert alert-success alert-dismissable">
        //                          <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>';
        //echo 'Successfully Saved';
        //echo '</div>';
    } else {
        // Errors
        echo '<div class="alert alert-danger alert-dismissable"> <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>';
        $err = array_values($v->errors());
        for ($i = 0; $i < count($err); $i++) {
            echo $err[$i][0] . "<br>";
        }
        echo '</div>';
        // Refresh the fields in the form
        $sth = $conn->prepare("SELECT * FROM hiveconfig");
        $sth->execute();
        $result = $sth->fetch(PDO::FETCH_ASSOC);
    }
}
if ($GDDSTATUS == "invalid") {
    echo '<div class="alert alert-danger alert-dismissable">GDD Start Date is greater than 1 year. Please update!</div>';
}
?>
    
コード例 #29
0
 /**
  * Update the given user details
  * @param array $params Token is required. Other keys can be: first_name, last_name, password, email, language
  */
 public function update($params)
 {
     $v = new Valitron\Validator($params);
     $v->rule('required', 'token');
     if ($v->validate()) {
         if (($user = $this->token->validate($params['token'])) !== false) {
             $params = $this->filter_parameters($params, array('password', 'email', 'language', 'first_name', 'last_name'));
             $v->rule('email', 'email');
             if ($v->validate()) {
                 if (isset($params['password'])) {
                     $params['password'] = create_hash($params['password']);
                 }
                 $sql = 'UPDATE user SET';
                 foreach ($params as $key => $value) {
                     $sql .= ' ' . $key . ' = :' . $key . ',';
                     $parameters[':' . $key] = $value;
                 }
                 $sql = substr($sql, 0, -1);
                 $sql .= ' WHERE id = :userid';
                 $parameters[':userid'] = $user['id_user'];
                 $query = $this->db->prepare($sql);
                 $query->execute($parameters);
                 return $this->return_true();
             } else {
                 return $this->update_error(array_keys($v->errors()));
             }
         } else {
             return $this->auth_error();
         }
     } else {
         return $this->param_error();
     }
 }
コード例 #30
0
ファイル: create_csvReport.php プロジェクト: mageni/projectrf
<?php

include '../main/config.php';
$db = new PDO("mysql:host={$dbhost};dbname={$dbname};charset=utf8", $dbuser, $dbpass);
$agency_temp = explode(":", $_POST["agency"]);
$v1 = new Valitron\Validator($agency_temp);
$v1->rule('slug', '0');
//validate agency
$v1->rule('regex', '1', '/^([\\w\\s_.\\[\\]():;@-])+$/');
//regex includes alpha/numeric, space, underscore, dash, period, white space, brackets, parentheses, colon, "at" symbol, and semi-colon
$v1->rule('numeric', ['2', '3']);
//validate scan_start and scan_end
if (!$v1->validate()) {
    print_r($v1->errors());
    exit;
}
$agency = $agency_temp[0];
$report_name = $agency_temp[1];
$scan_start = $agency_temp[2];
$scan_end = $agency_temp[3];
$agency_sql = "SELECT DISTINCT \n\t\t\t\t\tnessus_results.agency, \n\t\t\t\t\tnessus_results.report_name, \n\t\t\t\t\tnessus_results.scan_start, \n\t\t\t\t\tnessus_results.scan_end \n\t\t\t\tFROM \n\t\t\t\t\tnessus_results\n\t\t\t\t";
$agency_stmt = $db->prepare($agency_sql);
$agency_stmt->execute();
if ($agency != "") {
    $host_sql = "SELECT DISTINCT\n\t\t\t\t\tnessus_tags.host_name,\n\t\t\t\t\tnessus_tags.ip_addr,\n\t\t\t\t\tnessus_tags.fqdn,\n\t\t\t\t\tnessus_tags.netbios\n\t\t\t\tFROM\n\t\t\t\t\tnessus_results\n\t\t\t\tINNER JOIN nessus_tags ON nessus_results.tagID = nessus_tags.tagID\n\t\t\t\tWHERE \n\t\t\t\t\tnessus_results.agency = ? AND\n\t\t\t\t\tnessus_results.report_name = ? AND\n\t\t\t\t\tnessus_results.scan_start = ? AND\n\t\t\t\t\tnessus_results.scan_end = ?\n\t\t\t\tORDER BY \n\t\t\t\t\tnessus_tags.host_name\n\t\t\t\t";
    $host_data = array($agency, $report_name, $scan_start, $scan_end);
    $host_stmt = $db->prepare($host_sql);
    $host_stmt->execute($host_data);
    $plugin_sql = "SELECT DISTINCT \n\t\t\t\t\t\tnessus_results.pluginFamily \n\t\t\t\t\tFROM \n\t\t\t\t\t\tnessus_results \n\t\t\t\tWHERE \n\t\t\t\t\tnessus_results.agency = ? AND\n\t\t\t\t\tnessus_results.report_name = ? AND\n\t\t\t\t\tnessus_results.scan_start = ? AND\n\t\t\t\t\tnessus_results.scan_end = ?\n\t\t\t\t\tORDER BY \n\t\t\t\t\t\tnessus_results.pluginFamily\n\t\t\t\t\t";
    $plugin_data = array($agency, $report_name, $scan_start, $scan_end);
    $plugin_stmt = $db->prepare($plugin_sql);