예제 #1
0
    $_POST['date'] = 'NULL';
} else {
    $_POST['date'] = "'{$_POST['date']}'";
}
$query = "UPDATE document\nSET\n paid         = '{$_POST['paid']}',\n date         = {$_POST['date']},\n provider_id  = {$_POST['provider_id']},\n vat          = {$_POST['vat']},\n total_amount = {$_POST['total_amount']},\n currency     = '{$_POST['currency']}',\n note         = '{$_POST['note']}',\n accounting   = '{$_POST['accounting']}',\n type         = '{$_POST['type']}'";
$where = "WHERE md5 = '{$_POST['md5']}'";
# Open ticket if needed
if (!empty($_POST['open_ticket'])) {
    require_once 'WebfinancePreferences.php';
    require_once 'WebfinanceCompany.php';
    $prefs = new WebfinancePreferences();
    $wsdl = $prefs->prefs['mantis_api_url'] . '?wsdl';
    $username = $prefs->prefs['mantis_login'];
    $password = $prefs->prefs['mantis_password'];
    $company = new WebfinanceCompany($_POST['provider_id']);
    $company_info = $company->GetInfo();
    $method = 'http://';
    if (!empty($_SERVER['HTTPS']) and $_SERVER['HTTPS'] !== 'off') {
        $method = 'https://';
    }
    $url = $method . $_SERVER['HTTP_HOST'] . '/document/edit.php?md5=' . $_POST['md5'];
    $issue = array('summary' => "Document {$note} from {$company_info['name']}", 'description' => "New document {$note} from {$company_info['name']}\n\n{$url}", 'category' => 'Documents', 'project' => array('id' => 381));
    try {
        $mantis = new SoapClient($wsdl);
        $ticket_id = $mantis->mc_issue_add($username, $password, $issue);
        $query .= ", ticket_id    = {$ticket_id}";
    } catch (SoapFault $fault) {
        echo $fault;
        exit;
    }
}
예제 #2
0
// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
// details.
//
// You should have received a copy of the GNU General Public License along with
// this program. If not, see <http://www.gnu.org/licenses/>.
//
require_once '../../htdocs/inc/sso.php';
require_once '../../htdocs/inc/smarty.php';
try {
    // Check arguments
    if (empty($_GET['company_id'])) {
        throw new Exception('Missing argument');
    }
    // Check permissions
    $company = new WebfinanceCompany($_GET['company_id']);
    $company->ValidatePermission($_SESSION['cybsso_user']['email']);
    // Display localized amounts and dates
    foreach (array(LC_MESSAGES, LC_TIME, LC_MONETARY, LC_CTYPE) as $locale) {
        setlocale($locale, $_SESSION['cybsso_user']['language'] . ".UTF-8") or die("locale {$locale} language failed {$_SESSION['cybsso_user']}[language]");
    }
    $user = new WebfinanceUser($_SESSION['cybsso_user']['email']);
    $smarty->assign('this_company_id', $_GET['company_id']);
    $smarty->assign('companies', $user->GetCompanies());
    $smarty->assign('company_info', $company->GetInfo());
    $smarty->assign('invoices', $company->InvoicesGet());
} catch (SoapFault $fault) {
    $smarty->assign('error', $fault->getMessage());
} catch (Exception $fault) {
    $smarty->assign('error', $fault->getMessage());
}
$smarty->display('company/index.tpl');
 function testGetInfo()
 {
     $email = '*****@*****.**';
     WebfinanceUser::Create($email);
     $new_company = array('name' => 'ACME', 'address1' => '1110 Gateway Drive', 'zip_code' => 'CA 94404', 'city' => 'San Mateo', 'country' => 'US', 'email' => $email);
     $company_id = WebfinanceCompany::Create($new_company);
     $company = new WebfinanceCompany($company_id);
     $company_info = $company->GetInfo();
     $this->assertEquals($new_company['name'], $company_info['name']);
 }